gpt4 book ai didi

web-services - SQL 触发器可以调用 Web 服务吗?

转载 作者:行者123 更新时间:2023-12-03 21:33:29 25 4
gpt4 key购买 nike

我正在为 iPhone 应用程序构建一个 RESTful API。

当用户“ checkin ”[将新行插入表中]时,我想从该插入中获取数据并调用 Web 服务,该服务将根据该插入发送推送通知。

我能想到的唯一方法是通过 trigger ,或者有实际的插入方法,插入成功后,调用Web服务。这对我来说似乎是个坏主意。

想知道您是否对此有任何想法,或者是否有我没有想到的更好的方法。

最佳答案

即使在技术上可以,这也不是一个好主意!触发器应该非常精简,并且绝对不应该涉及冗长的操作(Web 服务调用肯定是这样)!重新考虑你的架构——应该有更好的方法来做到这一点!

我的建议是将“注意”您需要在触发器中调用 Web 服务的任务与该 Web 服务调用的实际执行分开。

就像是:

  • 在您的触发代码中,将“稍后调用 Web 服务”插入到表中(只是 INSERT 以保持精简和快速 - 仅此而已)
  • 有一个异步服务(SQL 作业,或者最好是 Windows NT 服务),它使这些调用与实际触发器执行分开,并将从该 Web 服务检索到的任何数据存储到数据库中的适当表中。

  • 触发器是一个非常挑剔的东西 - 它应该总是非常快速、非常精简 - 执行 INSERT最多或两个 - 并且一定要避免在触发器中使用光标或其他冗长的操作(如 Web 服务调用)

    Brent Ozar 在 The Top 10 Developer Mistakes That Don't Scale 上进行了精彩的网络广播(在 SQL PASS 上呈现)而触发器是他关注的第一件事!强烈推荐

    关于web-services - SQL 触发器可以调用 Web 服务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6153330/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com