【发布时间】:2020-12-12 10:32:02
【问题描述】:
在 SNS 主题或 Lambda 函数上设置死信队列有什么区别?
我想知道,因为如果您在 SNS 订阅上设置 DLQ,那么当 Lambda(订阅者)失败时,该订阅消息将故障转移到 DLQ,对吗?那么在那种情况下,在这两个地方设置DLQ会产生同样的效果吗?
我在 SNS 主题订阅上设置了 DLQ,但它并没有“自动”显示为 Lambda 屏幕设置中的 DLQ,所以我认为可能存在一些差异?
SNS 死信队列参考:https://docs.aws.amazon.com/sns/latest/dg/sns-dead-letter-queues.html
通常,当 Amazon SNS 由于客户端或服务器端错误而无法访问订阅的终端节点时,消息传递会失败。
Lambda 死信队列参考:https://aws.amazon.com/about-aws/whats-new/2016/12/aws-lambda-supports-dead-letter-queues/
在标准重试策略(失败时额外重试 2 次)用尽后,AWS Lambda 将调用 Lambda 函数的事件对象写入此 [DLQ] 端点。
拉姆达:
SNS 订阅:
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-sns serverless dead-letter