当前位置: 首页 > 知识库问答 >
问题:

在Amazon SQS中删除DLQ消息的最佳方法?

秦昊穹
2023-03-14

将消息从死信队列移回Amazon SQS中的原始队列的最佳实践是什么?

是吗

  1. 从DLQ获取消息
  2. 将消息写入队列
  3. 从DLQ删除消息

还是有更简单的方法?

此外,AWS最终会在控制台中提供一个工具来将消息移出DLQ吗?

共有3个答案

须曜文
2023-03-14

2021 12月1日,AWS发布了将消息从DLQ重新驱动回源队列(或自定义队列)的功能。

通过将死信队列重新驱动到源队列,您可以简化和增强标准队列的错误处理工作流。

资料来源:

将Amazon Simple Queue Service死信队列重新驱动引入源队列

柯瀚海
2023-03-14

有几个脚本可以帮你做到这一点:

  • 基于npm/NodeJ:http://github.com/garryyao/replay-aws-dlq
# install
npm install replay-aws-dlq;

# use
npx replay-aws-dlq [source_queue_url] [dest_queue_url]
  • 基于go:https://github.com/mercury2269/sqsmover
# compile: https://github.com/mercury2269/sqsmover#compiling-from-source

# use
sqsmover -s [source_queue_url] -d [dest_queue_url] 
高宏峻
2023-03-14

这里有一个快速破解。这绝对不是最好或推荐的选择。

  1. 将主SQS队列设置为实际DLQ的DLQ,最大接收数为1
  2. 查看DLQ中的内容(这会将消息移动到主队列,因为这是实际DLQ的DLQ)
  3. 删除该设置,使主队列不再是实际DLQ的DLQ
 类似资料:
  • 我正在使用Spring AMQP侦听RabbitMQ队列。在侦听队列时,根据业务逻辑,我的服务可以引发RuntimeException,在这种情况下,消息将重试多次。在最大次数重试后,消息将保留在DLQ中。我想知道,在DLQ中处理这些消息的最佳方法是什么?我从博客上读到我可以使用停车场队列。但在这种情况下,如何监控队列并通知人们死信消息?P、 对不起,我的英语不好。希望我能够解释我的问题:)

  • 问题内容: 在Python中,至少有两种方法可以使用键从字典中删除项目。 两种方法都会从字典中删除项目。 我想知道这些方法之间有什么区别,以及在哪种情况下应该使用其中一种。 问题答案: 如果要 捕获已删除的项目 ,请使用,例如。 使用,如果你想 从字典中删除项目 。 如果要删除,则在密钥不在词典中时禁止显示错误:

  • 我有一个Netty4.x应用程序,它需要发送和接收ASCII消息,从一个固定长度(10位数,零填充)字段开始,包含以#字符为单位的消息大小。消息如下:

  • 问题内容: 我有一些PHP代码。当我运行它时,出现警告消息。 如何删除/禁止/忽略这些警告消息? 问题答案: 您确实应该修复引起警告的所有内容,但是可以使用来控制错误的可见性。要跳过警告消息,您可以使用以下方法:

  • 问题内容: 我有一个需要删除/过滤重复项的对象数组。我本来只是要在Object元素上覆盖equals和hachCode,然后将它们放在Set中…但是我认为我至少应该轮询一下stackoverflow,看看是否还有另一种方法,也许是某些其他API的一些聪明方法? 问题答案: 我会用你的方法来覆盖同意,并和使用的东西实现。 这样做还使其他开发人员绝对清楚需要非重复特征。 另一个原因-您现在必须选择最能

  • 问题内容: 这是更新mysql SET字段,从字段中删除特定值的最佳方法。 例如。值分别为1,2,3,4,5的字段类别?我想从列表中删除“ 2”: 但是,如果“ 2”是列表中的第一个或最后一个值,该怎么办? 我如何用一个查询处理所有3种情况? 问题答案: 如果您需要从集合中删除的值不能多次出现,则可以使用以下方法: 看到它在这里工作。如果该值可以多次出现,则将删除所有出现的值: