本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 Amazon SQS FIFO 队列并发送消息
了解如何使用控制台创建 Amazon SQS FIFO 队列和发送消息。本主题介绍如何设置队列参数,包括可见性超时、消息保留和重复数据删除,同时遵循安全最佳实践,例如避免队列名称中的敏感信息以及启用服务器端加密。它还包括定义访问策略、配置死信队列以及发送带有消息组 ID 和重复数据删除 ID 等FIFO特定属性的消息。
创建队列
您可以使用 Amazon SQS 控制台创建FIFO队列。该控制台为除队列名称之外的所有设置提供默认值。
重要
2022 年 8 月 17 日,默认服务器端加密 (SSE) 已应用于所有亚马逊SQS队列。
请勿在队列名称中添加个人身份信息 (PII) 或其他机密或敏感信息。许多 Amazon Web Services 都可以访问队列名称,包括账单和 CloudWatch 日志。队列名称不适合用于私有或敏感数据。
创建 Amazon SQS FIFO 队列
打开 Amazon SQS 控制台,网址为https://console.aws.amazon.com/sqs/
。 -
选择创建队列。
-
对于类型,默认设置为标准队列类型。要创建FIFO队列,请选择FIFO。
注意
创建队列后无法更改队列类型。
-
输入队列的名称。
FIFO队列名称必须以
.fifo
后缀结尾。后缀计入 80 个字符的队列名称配额。要确定队列是否为 FIFO,您可以检查队列名称是否以后缀结尾。 -
(可选)控制台为队列配置参数设置默认值。在配置下,您可以为以下参数设置新值:
-
对于可见性超时,输入持续时间和单位。范围从 0 秒到 12 小时。默认值为 30 秒。
-
对于消息保留期,输入持续时间和单位。范围从 1 分钟到 14 天。默认值为 4 天。
-
对于传送延迟,输入持续时间和单位。范围从 0 秒到 15 分钟。默认值为 0 秒。
-
对于最大消息大小,输入一个值。范围从 1 KB 到 256 KB。默认值为 256 KB。
-
在接收消息等待时间中,输入一个值。范围从 0 秒到 20 秒。默认值为 0 秒,这会设置短轮询。任何非零值都会设置长轮询。
-
对于FIFO队列,选择基于内容的重复数据删除以启用基于内容的重复数据删除。默认情况下,该设置处于禁用状态。
(可选)要使FIFO队列在队列中为发送和接收消息启用更高的吞吐量,请选择启用高吞吐量FIFO。
选择此选项会将相关选项(重复数据删除范围和FIFO吞吐量限制)更改为为FIFO队列启用高吞吐量所需的设置。如果您更改使用高吞吐量所需的任何设置FIFO,则队列的正常吞吐量将生效,并且会按指定进行重复数据删除。有关更多信息,请参阅Amazon SQS 中 FIFO 队列的高吞吐量 和Amazon SQS 消息配额。
-
-
(可选)定义访问策略。访问策略定义了可以访问队列的账户、用户和角色。访问策略还定义了用户可以访问的操作(例如
SendMessage
、ReceiveMessage
或DeleteMessage
)。默认策略仅允许队列所有者发送和接收消息。要定义访问策略,请执行以下操作之一:
-
选择基本,配置谁可以向队列发送消息以及谁可以从队列接收消息。控制台根据您的选择创建策略,并在只读JSON面板中显示生成的访问策略。
-
选择 “高级” 可直接修改JSON访问策略。这允许您指定每个主体(账户、用户或角色)可以执行的一组自定义操作。
-
-
对于重新驱动允许策略,请选择启用。从以下选项中选择一个:全部允许、按队列或全部拒绝。选择 “按队列” 时,请按照 Amazon 资源名称 (ARN) 指定最多 10 个源队列的列表。
-
默认情况下,Amazon SQS 提供托管服务器端加密。要选择加密密钥类型或禁用 Amazon SQS 托管服务器端加密,请展开加密。有关加密密钥类型的更多信息,请参阅使用 SQS 托管的加密密钥为队列配置服务器端加密和使用 Amazon SQS 控制台为队列配置服务器端加密。
注意
SSE启用后,匿名
SendMessage
和对加密队列的ReceiveMessage
请求将被拒绝。Amazon SQS 安全最佳实践建议不要使用匿名请求。如果您想向 Amazon SQS 队列发送匿名请求,请务必禁用SSE。 -
(可选)要将死信队列配置为接收无法投递的消息,请展开死信队列。
-
(可选)要向队列添加标签,请展开标签。
-
选择创建队列。Amazon SQS 创建队列并显示队列的详情页面。
Amazon 在整个系统中SQS传播有关新队列的信息。由于 Amazon SQS 是一个分布式系统,因此在控制台在 “队列” 页面上显示队列之前,您可能会遇到轻微的延迟。
创建队列后,您可以向该队列发送消息,以及接收和删除消息。除队列类型外,您还可以编辑任何队列配置设置。
发送消息
创建队列后,您可以向该队列发送消息。
-
在左侧导航窗格中,选择队列。在队列列表中,选择刚刚创建的队列。
-
从操作中,选择发送和接收消息。
控制台会显示发送和接收消息页面。
-
对于消息正文,输入消息文本。
-
对于 First-In-First-Out (FIFO) 队列,输入消息组 ID。有关更多信息,请参阅 FIFOAmazon 中的队列配送逻辑 SQS。
-
(可选)对于FIFO队列,您可以输入消息重复数据删除 ID。如果您为队列启用了基于内容的重复数据删除,则不需要消息重复数据删除 ID。有关更多信息,请参阅 FIFOAmazon 中的队列配送逻辑 SQS。
-
FIFO队列不支持对单个消息设置计时器。有关更多信息,请参阅 Amazon SQS 消息计时器。
-
选择 Send message(发送消息)。
发送消息后,控制台会显示一条成功消息。选择查看详细信息,显示有关已发送消息的信息。