处理来自Amazon SQS死信队列的消息

时间:2018-05-16 03:35:14

标签: amazon-web-services aws-sdk amazon-sqs

我想处理来自Amazon SQS死信队列的邮件。

处理它们的最佳方法是什么?

  1. 从死信队列接收消息并处理它。
  2. 接收来自死信队列的消息放回主队列然后处理它?<​​/ li>

    我只需要偶尔处理来自死信队列的消息。

2 个答案:

答案 0 :(得分:0)

据推测,在失败多次之后,该消息最终出现在死信队列中。

将它放回主队列是一个好主意,因为,可能它会再次失败,你会创建一个无限循环。

最初,应手动检查死信息以确定失败的原因。然后,根据此信息,可以开发备用流程

答案 1 :(得分:0)

在仔细考虑了各种选项之后,我将使用您提到的选项2“ 从死信队列中接收邮件并放回主队列中,然后对其进行处理”。

确保从一个队列传输消息时,消息不会丢失。

在将消息从DLQ放入主队列之前,请确保已解决主侦听器中遇到的错误(主要是编码错误,如果有的话)或解决了任何网络问题。

主队列的侦听器已经重试了该消息,然后重试。因此,请确保跳过已成功完成的消息处理步骤,以防重试消息。如果有任何错误,也请还原成功处理的步骤。 (这也将有助于消息重试。)

DLQ用于意外错误。因此,您可能需要执行按需工作