AWS SQS控制台轮询时长可超20秒?与官方限制差异疑问
AWS SQS控制台轮询时长参数与官方20秒上限差异的原因
- 首先明确两类参数的本质区别
AWS官方公开的SQS长轮询最大20秒限制,是SQS服务端对ReceiveMessageAPI请求的WaitTimeSeconds参数的硬性上限,所有调用该API的场景都必须遵守该规则。
控制台「Send and receive messages」功能中可配置的1-999的poll duration参数,是控制台前端定义的总轮询等待时长,而非单次API调用的等待时长,二者不属于同一维度的参数。 - 控制台的轮询运行逻辑
当你设置了大于20秒的总轮询时长后,控制台会自动循环调用ReceiveMessageAPI,每次调用的WaitTimeSeconds参数均设为最大允许的20秒,只要未达到你设置的总轮询时长、且未拉取到消息,就会持续发起新的API请求,直到总时长耗尽或成功获取到消息为止。 - 示例说明
如果你设置了999秒的poll duration,控制台会连续发起约50次单次等待20秒的API请求,累计跑满999秒后才会停止轮询操作。
内容的提问来源于stack exchange,提问作者John Doe
相关产品推荐
相关产品推荐

