2017-07-29 75 views
0

我有一个要求发送电子邮件和短信基于一些条件给用户,我想发布消息到AWS(任何服务)与时间和消息在用户创建时,有没有根据我的预定时间和消息调用lambda函数的方式?AWS lambda函数将来的调度

+0

你的描述很混乱。您是否说在应用程序中创建用户时,您是否希望定义执行Lambda函数的未来时间,以及有关将用户传递给Lambda函数的信息?如果这不正确,请编辑您的问题以阐明您的要求。 –

+0

你能解释一下发送消息给任何服务是什么意思吗?你在哪里创建用户? – Ashan

回答

1

听起来像你所说的是你想存储一个消息和一个'发送时间'的地方,然后当那个时候到来时,通过短信和/或SES发出该消息,对吗?

很多方法来完成它,但一种方法是将您的消息存储到您选择的数据库(可能是dynamodb),并有一个lambda函数定期(每分钟或任何确定的频率)调用以找到准备发送的消息。

在这种情况下,您可以使用cloudwatch事件以您决定的间隔(但不超过每分钟一次)调用lambda函数。

可能的增强(特别是如果你有一个数量巨大的事件)将是lambda函数不实际处理短信/ ses发送 - 但只是找到那些准备发送的消息 - 并将这些消息发布到SNS主题,并具有不同的lambda函数来处理这些消息的实际处理(发送)。

+0

E.J. Brennan,感谢您的回放,目前我正在使用dynamo db并继续我的工作,但我的最终目标是避免DB,所以我正在寻找任何队列以保持我的信息,直到时间到来。 –

0

您可以为此使用CloudWatch预定事件。它允许你指定cron表达式。事件本身可以触发你的lambda,然后检查你可能有的任何先决条件,然后通过SNS或其他方式发送通知。