ReceiveMessage
呼叫最多可以从队列返回10条消息(http://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html)。我正在使用长轮询。最多可接收10条消息时设置SQS的可见性超时
我将遍历收到的消息列表并在单个线程中处理它们。这是否意味着我应该将VisibilityTimeout
设置为(expected time to process single message) * 10
。
或者SQS是否为我自动照顾这件事?如果是这样,我也会好奇地了解这一点,因为我一直无法在文档中找到任何澄清。
RabbitMQ可以自动解决这个问题,通过假设连接是否已经终止,消息需要重新发送。在某些情况下,SQS更有意义并延长可见性超时。 – NeverEndingQueue