我有一个计划的守护程序lambda,每天调用一次,以分析数据并为应用程序的用户创建所需的警报消息,以便进一步发送。我试图解决的问题是避免电子邮件发送中的"火花",因为如果我试图一次性发送所有创建的电子邮件,我会被SES自然拒绝。因此,我计划将创建的电子邮件存储在某个地方(SQS、DynamoDB等(,然后安排运行另一个lambda,该lambda将占用一部分电子邮件,调用SES.sendEmail((,然后如果仍有电子邮件要发送,则在几秒钟内安排另一个调用。我计划在lambda中创建CloudWatch事件,并使用Cron来调度lambda调用,但我意识到Cron有1分钟的精度,这对我的目的来说是不够的。我不会在任何lambda内部等待(因为它的方法是免费的(,所以lambda.Invoke((也不合适。有没有其他选择可以递归地从lambda本身调度具有条件延迟和秒精度的调用?
您可以有一个lambda来将电子邮件发布到sqs,这允许您设置传递延迟,还可以有另一个由队列中的消息触发的lambda。