Amazon SQS 延迟队列 - Amazon Simple Queue Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon SQS 延迟队列

延迟队列可让您将针对使用者的新消息传递操作推迟特定的秒数,例如,当您的使用者应用程序需要更多的时间处理消息时。如果您创建延迟队列,则发送到队列的任何消息在延迟期间对使用者都不可见。队列的默认(最短)延迟为 0 秒。最大值为 15 分钟。有关使用控制台配置延迟队列的信息,请参阅配置队列参数(控制台).

注意

对于标准队列,每队列延迟设置是不能追溯— 更改此设置不会影响队列中已有的消息的延迟。

对于 FIFO 队列,每队列延迟设置是追溯的— 更改此设置会影响队列中已有的消息的延迟。

延迟队列类似于可见性超时,因为这两种功能都使得使用者在特定的时间段内无法获得消息。二者之间的区别在于:对于延迟队列,消息在首次添加到队列时 是隐藏的;而对于可见性超时,消息只有在从队列使用后 才是隐藏的。下图说明了延迟队列和可见性超时之间的关系。

要设置延迟秒单个消息,而不是在整个队列中使用消息定时器允许 Amazon SQS 使用消息计时器DelaySeconds值而不是延迟队列的DelaySeconds值。