我当前正在使用nodemailer
从我的node.js应用程序发送电子邮件。
我正在寻找的是一种“东西”,它可以排队并安排多个用户发送大量电子邮件(每个用户500多个)。
这应该在后台作为单独的进程运行,并且必须由我的node.js应用程序触发。 电子邮件发送不应影响我的Node.Js应用程序(服务器)响应请求。
我知道上述声明似乎更像是一项软件要求,而不是要解决的问题,但我需要一个可靠的解决方案。请给出一个简短的解决方案(即,使用什么“东西”。)
答案 0 :(得分:0)
创建一个lambda函数以仅使用您的nodeMailer脚本发送一封电子邮件。
在此lambda中,我会将邮件程序缓存在实际的导出功能之外,例如:
const nodemailer = require('nodemailer');
exports.handler = (event, context, callback) => {
// ...NodeMailer stuff
callback(null, event)
};
然后通过SQS事件触发此lambda,如下所示: https://medium.com/slalom-technology/sqs-as-an-event-source-to-trigger-lambda-8858cb3f627f
您可以使用来自节点js应用程序的JS AWS-SDK将消息添加到队列,如下所示: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#sendMessage-property