在 AWS SQS 标准队列中,您可以设置重新驱动策略,如果出现故障,消息未从队列中删除,则会导致重试消息。
就我而言,我在队列中>了 1,000,000 条消息,需要几个小时来处理。当消息失败并被放回队列中时,它将被放在队列的末尾还是前面。处理完所有其他邮件后,邮件是否会在一两分钟或两三小时内重试?
无法保证返回哪些顺序消息,因此一旦返回消息,就可以立即重试,在处理所有其他消息时重试,或者在中间的任何地方 - 重试发生时可能有一些未记录的常见模式,但这不是您可以指望或设计的东西。
问:Amazon SQS 是否提供消息排序?
是的。FIFO(先进先出(队列保留确切的顺序 发送和接收哪些消息。如果使用 FIFO 队列,则 不必在消息中放置排序信息。欲了解更多信息 信息,请参阅 Amazon SQS 开发人员指南 中的 FIFO 队列逻辑。
标准队列提供松散 FIFO 功能,尝试 保留消息的顺序。但是,由于标准队列是 设计为使用高度分布式可大规模扩展 体系结构,以发送消息的确切顺序接收消息是 不保证。
https://aws.amazon.com/sqs/faqs/