首页 文章

Amazon SQS:两个当前消费者使用相同的消息

提问于
浏览
4

我有四个当前的消费者在Amazon AWS上侦听同一个队列 . 从队列中拉下消息时,有时两个不同的消费者会消耗相同的消息 . 请参阅下面的日志:

18:01:46,515 [jmsContainer-2] DEBUG - 从队列中收到消息:ID:3698a927-930b-4d6a-aeca-f66922528792

18:02:12,825 [jmsContainer-3] DEBUG - 从队列收到的消息:ID:3698a927-930b-4d6a-aeca-f66922528792

我有一个包含4个并发使用者的JMS容器设置 . 我将可见性超时设置为30秒 .

由于container2收到了消息,容器3怎么还能访问它?

JMS容器是否在执行侦听器方法(handleMessage)之前或之后执行自动确认?

1 回答

  • 5

    亚马逊不保证一旦交付SQS . 他们保证"at least once"交付 . 常见问题解答https://aws.amazon.com/sqs/faqs/

    您必须牢记这一点,并设计您的系统以优雅地处理重复的邮件传递 .

相关问题