【发布时间】:2016-12-25 19:51:37
【问题描述】:
我创建了一个基本的非 FIFO 队列,并且只在其上放置了 1 条消息。我使用以下代码检索消息:
ReceiveMessageRequest request = new ReceiveMessageRequest();
request.setQueueUrl(queueUrl);
request.setMaxNumberOfMessages(10);
request.withMessageAttributeNames("All");
ReceiveMessageResult result = sqsClient.receiveMessage(request);
List<Message> messages = result.getMessages();
messages.size() 给出 3
他们有:
- 相同的 MessageId
- 相同的正文和属性
- 相同的 MD5OfBody
- 不同的收据句柄
将MaxNumberOfMessages 从 10 更改为 1 修复了它,但我希望将来分批接收 10 个。
有人可以解释为什么它检索的消息比它应该的多吗?
下面是我的队列配置:
Default visibility timeout = 0
message retention = 4 days
max message size = 256kb
delivery delay = 0
receive message wait time = 0
no redrive policy
【问题讨论】:
标签: amazon-web-services amazon-sqs