当我的队列中仍有消息时,Amazon SQS长轮询返回0条消息。我已经能够多次重现这种效果。
我知道,即使队列中有更多消息,SQS长轮询也可能产生的消息少于请求的最大消息。
我还意识到,即使队列中的消息数超过零,短轮询也可以产生零消息。
但我不知道当队列中的消息数超过零时,长轮询可能会产生零消息。从阅读the docs后我所知道的情况来看,这不应该发生。
问题:
即使队列中有消息,SQS长轮询是否可以返回0消息?如果是这样,他们的特定条件是否会发生这种情况?如果没有,有没有其他人经历过这种行为?
答案 0 :(得分:5)
检查组ID是否唯一。
AFAIK,如果组中的一条消息正在进行中,则整个组都不可见。
答案 1 :(得分:0)
据我所知,这可能与任何这些队列属性有关:
请重新编写您的队列配置。请记住,可以在消息级别设置特定的可见性超时,这与队列设置的值不匹配。
希望这可能会有所帮助。
致以最诚挚的问候,