【发布时间】:2017-07-31 15:16:45
【问题描述】:
第三方应用程序使用 MS SQL Server 作为数据存储。在第 3 方应用程序 API 中,他们忘记为事件添加 webhook,因此我试图通过在他们的 SQL Server 数据库上添加相关的表触发器来在他们的 API 中添加 webhook 的概念。
想法是使用表触发器捕获 UPDATE 事件,如果它们更改给定字段,则通知进程(在 SQL Server 框外)执行一些批处理操作。
我正在考虑让 SQL Server 以某种方式调用 URL(也称为“webhook”)而不等待响应(或立即超时),最好使用 T-SQL。
在 SQL Server 中是否有任何方法可以做到这一点(来自 T-SQL 的异步 URL 调用)或者与外部系统通信而不会意外锁定 SQL Server 风险的唯一安全方法是从 SQL Server 发送电子邮件? (我使用的是 SQL Server 2012)
【问题讨论】:
-
你可以使用Service Broker来通知smth external
-
谢谢,我将研究 Service Broker 功能的工作原理。我对方法很灵活。总的来说,我担心影响底层第三方应用程序的性能(尽管在我们的特定用例中,有问题的表每分钟只修改 3 或 4 次,我不需要硬实时通知)。
标签: sql-server triggers