amazon-ec2 - 与 RabbitMQ 相比,Amazon SQS 的性能较慢

标签 amazon-ec2 rabbitmq amazon-sqs

我想在我的 Web 应用程序中集成消息队列中间层。我测试了 Rabbitmq 和 Amazon SQS,但发现 Amazon SQS 速度很慢。我在 Amazon SQS 中每秒收到 80 个请求,而在 Rabbitmq 中每秒收到 2000 个请求。我问这个问题是因为我对 Amazon SQS 更感兴趣,因为我在我的 Web 应用程序中使用了 Amazon 的所有服务。有人可以告诉我为什么这么慢吗?或者如果有人有任何好的 Amazon SQS 基准可以分享吗?任何帮助都将受到重视。

最佳答案

这里需要记住的一件事是,SQS 正在跨多个可用区复制您的数据。与单个 Rabbit 或其他 MQ 实现相比,这将增加时间复杂度。

如果您的单个 RabbitMQ 实例出现故障,您是否可以接受无法处理消息或可能丢失数据的情况?如果是,您可能不需要复制,甚至不需要磁盘持久性。但我猜大多数用例都会关心,因此,SQS 提供了一种非常不干涉的分布式 MQ 解决方案,理论上可以避免单点故障。

关于amazon-ec2 - 与 RabbitMQ 相比,Amazon SQS 的性能较慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10513317/

相关文章:

hadoop - 在 Amazon Elastic MapReduce 中运行自定义 jar 时如何访问 s3n 中的文件

python - 如何使用 Boto3 从 ami 获取实例 ID

rabbitmq - RabbitMQ 扇出交换问题

django - 使用 RabbitMQ 的 Amazon Elastic Beanstalk 上的 Celery 超时异常

amazon-ec2 - SQS/SNS 和一次性计算架构(EC2 SPOT 实例)

python - 在 Amazon 中处理消息

django - NGINX 不提供收集的静态文件

amazon-web-services - 如何在 NetworkLoadbalancer 中将公共(public) IP 更改为弹性 IP

java - 设计队列线程消费者的性能问题

amazon-web-services - 请参阅 Elastic Beanstalk 从我的应用程序创建的资源?