本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
什么是 Amazon Simple Queue Service?
Amazon Simple Queue Service (Amazon SQS) 提供了一个安全、持久且可用的托管队列,可让您集成和分离分布式软件系统和组件。Amazon SQS 提供常见的结构,例如死信队列和成本分配标签. 它提供了一个通用 Web 服务 API,您可以使用任何编程语言访问。AWSSDK 支持。
Amazon SQS 支持两者标准和FIFO 队列. 有关更多信息,请参阅 队列类型。
使用 Amazon SQS 的优势
-
安全–你可以控谁能向 Amazon SQS 队列发送消息并从队列接收消息。
服务器端加密 (SSE)可让您使用中托管的密钥来保护队列中消息的内容,从而传输敏感数据。AWS Key Management Service(AWS KMS)。
-
持久性持久性 — 为确保您消息的安全,Amazon SQS 将消息存储在多个服务器上。标准队列支持至少一次消息传递,并支持 FIFO 队列正好一次消息处理.
-
可用性Amazon SQS 使用冗余基础架为生成和使用消息提供高度并发的消息访问和高可用性。
-
可扩展性— Amazon SQS 可以处理每个缓冲的请求可独立扩展以处理任何负载增加或峰值,无需任何预配置指令。
-
可靠性Amazon SQS 在处理期间锁定消息,以便多个生成者可同时发送消息,多个使用者可同时接收消息。
-
自定义您的队列不必完全相同,例如,您可以在队列上设置默认延迟. 可以存储大于 256 KB 的消息的内容。使用 Amazon Simple Storage Service (Amazon S3)或 Amazon DynamoDB,Amazon SQS 持有指向 Amazon S3 对象的指针,或者您可以将大消息拆分为较小的消息。
Amazon SQS、Amazon MQ 和 Amazon SNS 之间的区别
Amazon SQS 和Amazon SNS
Amazon MQ
队列类型
下表介绍了标准队列和 FIFO 队列的功能。
标准队列 | FIFO 队列 |
---|---|
无限吞吐量每个 API 操作的标准队列支持几乎无限的 API 调用( 至少一次传递传递至少一次消息传递,但偶尔会传送消息的多个副本。 最大努力订购有时,消息的传递顺序与发送时的顺序不同。 |
高吞吐量如果您使用一批,FIFO 队列的每个 API 方法每秒最多支持 3,000 条消息(SendMessageBatch 、ReceiveMessage ,或者DeleteMessageBatch )。每秒 3000 条消息代表 300 个 API 调用,每个调用带有包含 10 条消息的一个批处理。要申请提高配额,请提交支持请求SendMessage 、ReceiveMessage 或 DeleteMessage )每秒最多支持 300 个 API 调用。确切一次处理消息传送一次并在使用者处理并删除消息之前保持可用。不会将重复项引入到队列中。 先进先出配送严格保持消息的发送和接收顺序。 |
![]() |
![]() |
当吞吐量很重要时,请在应用程序之间发送数据,例如:
|
当事件的顺序重要时,请在应用程序之间发送数据,例如:
|
Amazon SQS 入门的常见任务
-
要使用 Amazon SQS 创建您的第一个队列并发送、接收和删除消息,请参阅开始使用 Amazon SQS.
-
要触发 Lambda 函数,请参阅配置队列以触发AWS Lambda函数(控制台)。
-
要探索 Amazon SQS 的功能和架构,请参阅。Amazon SQS 的运作原理.
-
要查找有助于您充分利用 Amazon SQS 的准则和注意事项,请参阅。Amazon SQS 的最佳实践.
-
探索 Amazon SQS 示例,了解其中一个AWSSDK,例如AWS SDK for Java 2.x开发人员指南.
-
要了解 Amazon SQS 操作的信息,请参阅Amazon Simple Queue Service API 参考.
-
了解 Amazon SQSAWS CLI命令,请参阅AWS CLI命令参考.
Amazon SQS 的定价
Amazon SQS 没有前期成本。前百万个月请求是免费的。之后,您将根据请求的数量和内容以及与 Amazon S3 和AWS Key Management Service.
想要了解有关信息,请参阅Amazon SQS 定价