Mad*_*nen 6 amazon-sqs amazon-web-services amazon-sns aws-lambda
我有一个用例,我需要Amazon SNS发送通知,直到我的应用程序(让我们称之为APP)成功收到它,但文档说消息的最长生命周期可能是1小时.
让我们说APP崩溃了,并且不可能在1小时内让它生效.我仍然需要以某种方式接收这些消息.
有多种方法可以实现它:
完美的解决方案是为SNS消息设置无限超时,但看起来亚马逊不支持它.
您认为解决此问题的最佳解决方案是什么?我错过了什么吗?
小智 5
一种选择可能是让SNS将消息传递给调用您的应用程序的Lambda.如果Lambda无法将消息传递到您的应用程序,则会失败,以便SNS将重试Lambda.然后,您可以使用死信队列(SQS)配置Lambda,以便在失败次数过多时,消息将进入队列.最后,您可以按计划运行另一个Lambda,该计划检查死信队列并重试Lambda调用.如果失败,它会继续将消息放回到死信队列中.
这样,如果您的应用程序可用,则会立即传递消息.如果该应用程序不可用,那么它将在稍后重试交付.
| 归档时间: |
|
| 查看次数: |
1188 次 |
| 最近记录: |