use*_*112 2 amazon-sqs amazon-web-services aws-sdk aws-lambda
我在这里查看 AWS SQS 文档:https : //docs.aws.amazon.com/sdk-for-net/v3/developer-guide/ReceiveMessage.html#receive-sqs-message
我的理解是,我们需要AmazonSQSClient.DeleteMessage()在完成处理后删除消息,但是当我们使用 SQS 触发的 Lambda 时,这是否必要?
我正在使用由 触发的 Lambda 函数进行测试SQSEvent,除非我弄错了,否则看起来如果 Lambda 函数运行完成而没有抛出任何错误,则消息不会返回到 SQS 队列。如果这是真的,我宁愿避免对AmazonSQSClient.DeleteMessage().
这是 2019 年的一个类似问题,最佳答案是 SDK 不会自动删除消息,需要在代码中明确删除它们。我想知道从那以后是否有什么变化。
想法?
这里的关键是您正在使用AWS Lambda 与 SQS 的集成。在这种情况下,AWS Lambda 处理从队列中检索消息(通过event对象使它们可用),并在 Lambda 函数返回成功状态时自动为您从队列中删除消息。如果 Lambda 函数抛出错误,它不会从队列中删除消息。
将 AWS Lambda 与 SQS 集成时,您根本不应使用 AWS 开发工具包与 SQS 队列交互。
| 归档时间: |
|
| 查看次数: |
1205 次 |
| 最近记录: |