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

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

Amazon SQS 队列类型

Amazon SQS 支持两种类型的队列 - 标准队列和 FIFO 队列。使用下表中的信息选择适合您情况的队列。要详细了解 Amazon SQS 队列,请参阅开始使用 Amazon SQS 标准队列开始使用 Amazon SQS FIFO 队列

标准队列 FIFO 队列

无限制吞吐量 – 标准队列支持每个 API 操作(SendMessageReceiveMessageDeleteMessage)每秒几乎无限次的 API 调用。

至少一次传递 – 消息至少传送一次,但偶尔会传送消息的多个副本。

最大努力排序 – 消息偶尔可能按不同于其发送时的顺序传送。

高吞吐量 - 如果您使用批处理,则 FIFO 队列支持每个 API 方法(SendMessageBatchReceiveMessageDeleteMessageBatch)每秒最多 3000 条消息。每秒 3000 个事务代表 300 次 API 调用,每次调用带有包含 10 条消息的一个批处理。要申请提高配额,请提交支持请求。在不使用批处理的情况下,FIFO 队列的每个 API 方法(SendMessageReceiveMessageDeleteMessage)每秒最多支持 300 个 API 调用。

仅处理一次 – 消息传递一次并在使用者处理并删除它之前保持可用。不会将重复项引入到队列中。

先进先出传递 – 严格保持消息的发送和接收顺序。

当吞吐量很重要时,请使用此队列在应用程序之间发送数据,例如:

  • 将实时用户请求从密集型后台工作中分离:让用户在调整媒体大小或对媒体编码时上传媒体。

  • 将任务分配给多个工作程序节点:处理大量信用卡验证请求。

  • 将消息分批以便进一步处理:计划要添加到数据库的多个条目。

当事件的顺序重要时,请使用此队列在应用程序之间发送数据,例如:

  • 确保按正确的顺序运行用户输入的命令。

  • 通过按正确的顺序发送价格修改来显示正确的产品价格。

  • 防止学员在注册账户之前参加课程。