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

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

创建 Amazon SQS FIFO 队列并发送消息

这是为 Amazon SQS 创建 FIFO 队列的方法。

创建队列

您可以使用 Amazon SQS 控制台创建 FIFO 队列。该控制台为除队列名称之外的所有设置提供默认值。

重要

2022 年 8 月 17 日,默认服务器端加密 (SSE) 应用于所有 Amazon SQS 队列。

请勿在队列名称中添加个人身份信息 (PII) 或其他机密/敏感信息。许多 Amazon Web Services 都可以访问队列名称,包括账单和 CloudWatch 日志。队列名称不适合用于私有或敏感数据。

创建 Amazon SQS FIFQ 队列
  1. 通过以下网址打开 Amazon SQS 控制台:https://console.aws.amazon.com/sqs/

  2. 选择创建队列

  3. 对于类型,默认设置为标准队列类型。要创建 FIFO 队列,请选择 FIFO

    注意

    创建队列后无法更改队列类型。

  4. 输入队列的名称

    FIFO 队列名称必须以 .fifo 后缀结尾。后缀计入 80 个字符的队列名称配额。要确定队列是否为 FIFO,您可以检查队列名称是否以该后缀结尾。

  5. (可选)控制台为队列配置参数设置默认值。在配置下,您可以为以下参数设置新值:

    1. 对于可见性超时,输入持续时间和单位。范围从 0 秒到 12 小时。默认值为 30 秒。

    2. 对于消息保留期,输入持续时间和单位。范围从 1 分钟到 14 天。默认值为 4 天。

    3. 对于传送延迟,输入持续时间和单位。范围从 0 秒到 15 分钟。默认值为 0 秒。

    4. 对于最大消息大小,输入一个值。范围从 1 KB 到 256 KB。默认值为 256 KB。

    5. 接收消息等待时间中,输入一个值。范围从 0 秒到 20 秒。默认值为 0 秒,这会设置短轮询。任何非零值都会设置长轮询。

    6. 对于 FIFO 队列,选择基于内容的重复数据删除,以启用基于内容的重复数据删除。默认情况下,该设置处于禁用状态。

    7. (可选)要让 FIFO 队列启用更高的吞吐量以便在队列中发送和接收消息,请选择启用高吞吐量 FIFO

      选择此选项会将相关选项(重复数据删除范围FIFO 吞吐量限制)更改为为 FIFO 队列启用高吞吐量所需的设置。如果更改使用高吞吐量 FIFO 所需的任何设置,则队列正常吞吐量生效,重复数据删除按规定进行。有关更多信息,请参阅 FIFO 队列的高吞吐量与消息相关的配额

  6. (可选)定义访问策略访问策略定义了可以访问队列的账户、用户和角色。访问策略还定义了用户可以访问的操作(例如 SendMessageReceiveMessageDeleteMessage)。默认策略仅允许队列所有者发送和接收消息。

    要定义访问策略,请执行以下操作之一:

    • 选择基本,配置谁可以向队列发送消息以及谁可以从队列接收消息。控制台根据您的选择创建策略,并在只读 JSON 面板中显示生成的访问策略。

    • 选择高级,直接修改 JSON 访问策略。这允许您指定每个主体(账户、用户或角色)可以执行的一组自定义操作。

  7. 对于重新驱动允许策略,请选择启用。从以下选项中选择一个:全部允许按队列全部拒绝。选择按队列时,按 Amazon 资源名称 (ARN) 指定最多 10 个源队列的列表。

  8. 默认情况下,Amazon SQS 提供托管服务器端加密。要选择加密密钥类型或禁用 Amazon SQS 托管服务器端加密,请展开加密。有关加密密钥类型的更多信息,请参阅使用 SQS 托管的加密密钥为队列配置服务器端加密 (SSE)(控制台)为队列配置服务器端加密 (SSE)(控制台)

    注意

    启用 SSE 后,对加密队列的匿名 SendMessageReceiveMessage 请求将被拒绝。Amazon SQS 安全最佳实践建议不要使用匿名请求。如果您想向 Amazon SQS 队列发送匿名请求,请确保禁用 SSE。

  9. (可选)要将死信队列配置为接收无法投递的消息,请展开死信队列

  10. (可选)要向队列添加标签,请展开标签

  11. 选择创建队列。Amazon SQS 创建队列并显示队列的详细信息页面。

Amazon SQS 会在整个系统中传播有关新队列的信息。由于 Amazon SQS 是一种分布式系统,因此在控制台在队列页面上显示队列之前,您可能会遇到轻微的延迟。

创建队列后,您可以向该队列发送消息,以及接收和删除消息。除队列类型外,您还可以编辑任何队列配置设置。

发送消息

创建队列后,您可以向该队列发送消息。

  1. 在左侧导航窗格中,选择队列。在队列列表中,选择刚刚创建的队列。

  2. 操作中,选择发送和接收消息

    控制台会显示发送和接收消息页面。

  3. 对于消息正文,输入消息文本。

  4. 对于先进先出 (FIFO) 队列,输入消息组 ID。有关更多信息,请参见 FIFO 传送逻辑

  5. (可选)对于 FIFO 队列,您可以输入消息重复数据删除 ID。如果您为队列启用了基于内容的重复数据删除,则不需要消息重复数据删除 ID。有关更多信息,请参见 FIFO 传送逻辑

  6. FIFO 队列不支持单个消息的计时器。有关更多信息,请参见 Amazon SQS 消息计时器

  7. 选择 Send message(发送消息)。

    发送消息后,控制台会显示一条成功消息。选择查看详细信息,显示有关已发送消息的信息。