Amazon Simple Queue Service
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

Amazon SQS 标准队列和 FIFO 队列的标识符

有关以下标识符的更多信息,请参阅 Amazon Simple Queue Service API Reference

队列名称和 URL

在创建新的队列时,您必须为 AWS 账户和区域指定唯一的队列名称。Amazon SQS 会为您创建的每个队列指定一个名为队列 URL 的标识符,该标识符包含队列名称以及其他 Amazon SQS 组件。每当您要对队列执行操作时,都需要提供其队列 URL。

FIFO 队列的名称必须以 .fifo 后缀结尾。 该后缀也包含在 80 个字符的队列名称限制之内。要确定队列是否为 FIFO,您可以检查队列名称是否以该后缀结尾。

以下是名为 MyQueue 的队列的队列 URL,该队列由 AWS 账号为 123456789012 的用户所拥有。

https://sqs.us-east-2.amazonaws.com/123456789012/MyQueue

重要

在您的系统中,请始终准确存储在您创建队列时 Amazon SQS 返回给您的完整队列 URL (例如,https://sqs.us-east-2.amazonaws.com/123456789012/MyQueue)。每当您需要在请求中指定队列 URL 时,请勿基于它的各个组成部分构建队列 URL,因为 Amazon SQS 可能会更改构成队列 URL 的组成部分。

此外,您还可以通过列出您的队列来获取队列的队列 URL。有关更多信息,请参阅 ListQueues

消息 ID

每条消息都会收到一个系统分配的消息 ID,该 ID 由 Amazon SQS 在 SendMessage 响应中返回给您。此标识符用于识别消息。(但,要删除消息,您需要消息的接收句柄。)消息 ID 的最大长度为 100 个字符。

接收句柄

每当收到来自队列的消息时,您都会收到该消息的接收句柄。此句柄与接收消息的操作相关联,与消息本身无关。要删除消息或更改消息可见性,您必须提供接收句柄 (而不是消息 ID)。因此,您必须始终先接收消息,然后才能删除它 (您不能将消息放入队列中,然后重新调用它)。接收句柄的最大长度为 1024 个字符。

重要

如果多次接收某条消息,则每次接收该消息时,您都会获得不同的接收句柄。在请求删除该消息时,您必须提供最近收到的接收句柄 (否则,可能无法删除该消息)。

以下是接收句柄的示例 (跨三条线分解)。

MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljTM8tJJg6HRG6PYSasuWXPJB+Cw Lj1FjgXUv1uSj1gUPAWV66FU/WeR4mq2OKpEGYWbnLmpRCJVAyeMjeU5ZBdtcQ+QE auMZc8ZRv37sIW2iJKq3M9MFx1YvV11A2x/KSbkJ0=