【问题标题】:build email notification sytem that send emails on sql server triggers构建在 sql server 触发器上发送电子邮件的电子邮件通知系统
【发布时间】:2013-03-31 19:53:45
【问题描述】:

我有一个用 C# 编写并使用 SQL Server 的 Web 项目。我需要编写一个电子邮件通知系统。我做了一些研究,有些人建议使用 CLR,有些人建议使用 C# 代码中的业务逻辑。我以前没有做过这个系统,我想知道其他人是怎么做的。

我的想法是创建一个Queue 表,并为我要监视更改的表创建触发器。当触发器被执行时,它将向Queue 表插入一个电子邮件请求。稍后,我将循环该队列表并发送电子邮件。我可能会在不久的将来使用亚马逊网络服务发送电子邮件,但还没有决定。

你认为这是个好主意吗?

【问题讨论】:

    标签: asp.net sql-server email amazon-web-services


    【解决方案1】:

    这是一个好主意,但是请挥手,您看看已经存在的东西,开箱即用? sp_send_dbmail 也差不多。它将邮件请求放入队列中,并使用外部应用程序执行 SMTP 工作。我认为如果您必须使用 Amazon SNS,那么内置的数据库邮件将不起作用。

    不要听取建议直接从触发器发送电子邮件的建议(例如,使用 SQLCLR)。除了明显的性能损失(表上的每个 DML 操作现在都必须等待 SMTP 或 HTTP 操作的巨大延迟)之外,您还有更大的事务一致性问题,您如何回忆回滚时的电子邮件?所以是的,使用中间队列是强制性的。也可以看看Using Tables as Queues

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 1970-01-01
      • 2013-11-29
      • 2019-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多