使用 AWS 和 SES 发送 SQL 封电子邮件

Sending SQL emails using AWS and SES

我希望有人能够帮助我解决这个问题,因为我是 AWS 的新手。

我有一个使用 .NET MVC 的 Web 应用程序,它将在 AWS 中 deployed/hosted。这是我想要实现的目标的描述:

1- 假设 Web 应用程序将在 SQL 服务器上的产品 Table 中插入产品。

2- 插入此产品后,系统 (AWS) 会从 SQL 服务器上的客户端 Table 向客户端发送电子邮件。

我会很感激任何指导或有用的 link。

先谢谢大家了。

当你谈到职责分离时,我看不出有什么比数据库服务器更能发送电子邮件(即使它可以做到)。发送电子邮件是你业务层的任务,当然不是数据层。

使用网络应用程序触发发送电子邮件的过程,而不是直接将其实现到网络应用程序中,或者将其与消息系统(如 SNS)、队列系统(如 SQS)或其他任何系统分开.

第一个问题的答案是 'yes'。是 SQL 服务器可以使用 SES 发送电子邮件。因为 SQL 服务器可以发送电子邮件,所以您需要做的就是在您的帐户通过验证并使用 SES 后将其设置为使用来自 SES 的正确 SMTP 设置。

就是说,我永远不会让我的数据库服务器发送电子邮件,只是看起来不适合这样做;即使你可以。

我已经开发并支持了多个这样的系统,我通常使用的模式是让 Web 应用程序在 SQS 队列中插入一条消息,该消息将用作另一个进程的输入以发送电子邮件。如果可能,我喜欢将有关电子邮件的所有详细信息包含到 SQS 消息中,即发件人、收件人、主题和正文 - 下游流程需要知道的所有信息才能发送出去。

在我的例子中,我在自动缩放组中的几个 EC2 实例上使用 windows 服务 运行 来轮询队列并发送电子邮件。在大多数情况下,我能够将所有电子邮件存储在 SQS 正文中,windows 服务完全是通用的 - 它读取 SQS 消息,撰写电子邮件并将其发送出去。因为电子邮件的所有详细信息都在 SQS 消息正文中,所以这个 SQS 队列和正在处理它的 windows 服务可以处理来自各种应用程序的电子邮件,因为该服务不需要包含任何特定于应用程序的业务逻辑,没有外部依赖性。