AWS SQS:可见性超时到期后,FIFO 队列中的消息顺序是什么?

JBa*_*cía 3 timeout message-queue fifo amazon-sqs amazon-web-services

在 AWS SQS FIFO 的队列中;当已读消息的可见性超时时,消息将位于队列的哪个位置?

例如:

  • 我在队列中有这些消息:'[A, B, C, D]'(顺序:A first in)
  • 我从队列中读取了一条消息,因此收到消息“A”
  • 消息“A”的可见性超时到期,消费者可以再次使用它

消息的新顺序是什么?

  • a) [A、B、C、D]
  • b) [B、C、D、A]

Joh*_*ein 6

顺序保持不变: [A, B, C, D]

事实上,在消息 A 被处理之前,不可能从队列中获取具有相同消息组 ID 的另一条消息。这可确保保留订单。

在允许并行处理某些消息的情况下,您可以指定不同的消息组 ID。