30

我是 AWS 的新手。据我了解,AWS MQ 和 AWS SQS 都是消息队列工具。唯一值得注意的区别是 SQS 是完全托管的。

我们什么时候应该使用 SQS 或 MQ?

4

2 回答 2

35

SQS 是一个简单的排队服务。它不支持许多更高级别的抽象,如消息路由、扇出、分发列表等。它是一个队列——产生一条消息,然后传递一条消息。当您需要具有有限后备逻辑的队列时,它很有用。

AWS MQ 是一种托管的 Apache ActiveMQ(或 RabbitMQ)代理服务。

这为您在云中提供了一个完全托管的 Apache ActiveMQ 系统,支持各种行业标准队列和广播协议,如 AMQP、JMS 等。当您有复杂的交付规则或迁移现有的系统从 AWS 外部进入 AWS,并且您的系统碰巧使用标准队列协议相互通信。

于 2020-02-21T12:04:13.193 回答
8

AWS 文档中,您可以搜索“问:我应该何时使用 Amazon MQ 与 Amazon SQS 和 SNS? ”:

Amazon MQ、Amazon SQS 和 Amazon SNS 是适合从初创公司到企业的任何人的消息传递服务。如果您在现有应用程序中使用消息传递,并且希望将消息传递快速轻松地移动到云中,我们建议您考虑使用 Amazon MQ。它支持行业标准 API 和协议,因此您可以从任何基于标准的消息代理切换到 Amazon MQ,而无需重写应用程序中的消息传递代码。如果您在云中构建全新的应用程序,我们建议您考虑使用 Amazon SQS 和 Amazon SNS。Amazon SQS 和 SNS 是轻量级、完全托管的消息队列和主题服务,几乎可以无限扩展并提供简单易用的 API。您可以使用 Amazon SQS 和 SNS 解耦和扩展微服务、分布式系统和无服务器应用程序,

此外,在此文档中,您可以检查与其他服务的比较。

于 2021-07-21T14:07:55.407 回答