首页 > 解决方案 > 发生错误时,是否有任何方法(功能)可以保存 SQS 的数据?

问题描述

假设在读取SQS的数据的过程中出现问题,并使用SQS的数据再次执行处理。

在这种情况下,是否有任何功能可以保存 SQS 的数据?

作为一个假设的例子:

  1. 使用 + fargate 处理时出错
  2. 保存 SQS 的数据
  3. 操作人员确认了疏散数据和异常内容。判断可以重传
  4. 使用保存的数据再次执行处理

标签: amazon-web-servicesamazon-sqs

解决方案


您可能会发现 Amazon SQS 会自动为您执行此操作。

一般流程是:

  • 消息被放入 Amazon SQS 队列
  • 工作人员从队列中检索消息
  • 从队列中检索到消息后,它会留在队列中,但会被标记为“不可见
  • 一旦工作人员处理完消息,它就会从队列中删除消息
  • 但是,如果消息在指定的时间段内没有被删除,消息会自动重新出现在队列中,准备好被另一个worker处理
  • 如果这种情况发生超过指定次数,则可以将消息移动到死信队列以进行进一步调查和处理

因此,如果在处理 SQS 消息的过程中发生错误,它会在稍后自动出现以再次处理。

请参阅:Amazon SQS 可见性超时


推荐阅读