我想在我的 Web 应用程序中集成一个消息队列中间层。我测试了 Rabbitmq 和 Amazon SQS,但发现 Amazon SQS 很慢。我在 Amazon SQS 中获得 80 个请求/秒,而在 Rabbitmq 中获得 2000 个请求/秒。我问这个问题是因为我对 Amazon SQS 更感兴趣,因为我将 Amazon 的所有服务用于我的 Web 应用程序。谁能告诉我为什么这么慢?或者,如果有人对 Amazon SQS 有任何好的基准,您可以分享一下吗?任何帮助都将得到回报。
问问题
10254 次
2 回答
10
这里要记住的一件事是,SQS 正在跨多个 AZ 复制您的数据。与单个 Rabbit 或其他 MQ 实现相比,这将增加时间复杂度。
如果您的单个 RabbitMQ 实例出现故障,您是否可以处理无法处理消息或可能丢失数据?如果是,您可能不需要复制甚至磁盘持久性。但我猜大多数用例都会关心,因此,SQS 提供了一个非常不干涉的分布式 MQ 解决方案,从理论上讲,它与单点故障隔离。
于 2013-09-18T05:53:59.353 回答
4
根据这篇文章,您可以在 Amazon AWS (EC2) 上运行 RabbitMQ,它会更快并且可能更便宜,每秒有一条消息和财务比较。RabbitMQ网站上还有其他一些操作指南
于 2012-05-09T13:10:14.543 回答