amazon-web-services - 从 lambda 触发器返回而不从队列中删除消息
问题描述
在我的 lambda 函数中,我将receiptHandle
作为正文数据发送到服务器。然后,此服务器必须完成工作并告诉 SQS 删除此消息。
问题是aws docs说:
...
如果您的函数成功处理批处理,Lambda 会从队列中删除消息。如果您的函数受到限制、返回错误或没有响应,则该消息将再次可见。
这意味着如果我将 SQS 消息删除委托给另一个服务并结束 Lambda 执行,则 SQS 消息将被此 Lambda 出口删除,这是我不希望发生的。消息的可见性超时也应该保持不变。
有没有办法做到这一点?
解决方案
有没有办法做到这一点?
不,内置的SQS -> Lambda集成以这种方式工作(即,一旦 Lambda 函数成功返回,它就会从 SQS 中删除一条消息,如您链接和引用的文档中所述),并且它是不可配置的。
[...] 我不想发生这种情况。
为什么要将SQS 消息删除委托给另一个服务?你真正想要达到什么目的?
推荐阅读
- c# - Linq Query 使用 In 子句加入子查询
- jmeter - JMeter HTML 报告 - 命名为 HTTP 请求
-0, -1 -2 等等 - 为什么? - tensorflow - 如何在tensorflow中实现caffe反卷积填充?
- javascript - 在 html 中包含脚本的正确方法是什么
- jquery - 查找执行搜索时数据表中返回的行数
- datagrip - 有没有办法配置数据抓取将'ssf'转换为'select * from'
- kendo-ui - 如何在 Kendo UI 中使用复选框和 ServerPaging?
- sql-server - MSSQL:如何通过引用同一个表进行多个级联
- python - python比较上一行和下一行的值
- azure - 我们可以使用 Azure 数据工厂将图像、视频文件从一个位置移动到另一个位置吗?