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

2024-03-06

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


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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

与 RabbitMQ 相比,Amazon SQS 的性能较慢 的相关文章

  • 定义具有多种消息类型的消息传递域

    到目前为止 我见过的大多数 F 消息传递示例都使用 2 4 种消息类型 并且能够利用模式匹配将每条消息定向到其正确的处理函数 对于我的应用程序 由于处理和所需参数的不同性质 我需要数百种独特的消息类型 到目前为止 每个消息类型都是其自己的记
  • 无法连接到我的 aws ec2 实例上的 neo4j 服务器 - 端口 7474

    在我的 aws ec2 实例上安装 neo4j 后 以下内容似乎表明服务器已启动 bin neo4j console Active database graph db Directories in use home usr local sh
  • 运行用户数据脚本 AWS EC2 时出现问题

    是否可以通过 AWSCLI 用户数据 运行 python 脚本 我尝试过 但它没有运行 我的日志中有以下内容 boot log 2015 08 07 10 08 30 660 init py WARNING Unhandled non mu
  • 在 Celery 工作线程中捕获 Heroku SIGTERM 以优雅地关闭工作线程

    我对此进行了大量研究 令我惊讶的是我还没有在任何地方找到一个好的答案 我正在 Heroku 上运行一个大型应用程序 并且我有某些运行很长时间处理的 celery 任务 并在任务结束时保存结果 每次我在 Heroku 上重新部署时 它都会发送
  • 有人使用 Hibernate 使用 Elasticache 作为二级缓存吗?

    我发现一些线程说这是可行的 但没有找到具体的说明或配置信息 我也想从 Beanstalk 执行此操作 应用程序应该部署到 beanstalk 并使用将 hibernate 指向 elasticache 实例的配置 是的 我们能够使用二级缓存
  • 对 Amazon EC2 上的 Weblogic 10gR3 RMI 服务器的负载平衡请求

    我正在参与开发一个分布式解决方案 基于RMI 并部署在多个Weblogic 10gR3 10 3 0 0 节点上 其中一个节点托管 RMI 服务器 其他节点通过外部 JNDI 提供程序访问它 在尝试通过添加额外的 RMI 服务器来改进我们的
  • RabbitMQ Java 客户端自动重新连接

    当我的应用程序失去与 RabbitMQ 的连接时 我将其连接工厂设置为自动尝试并重新连接 ConnectionFactory factory new ConnectionFactory factory setUsername usernam
  • SpringBoot @SqsListener - 不工作 - 有异常 - TaskRejectedException

    我有一个 AWS SQS 队列中已有 5000 条消息 示例消息类似于 Hello 1 我创建了一个 SpringBoot 应用程序 并在其中一个组件类中创建了一个从 SQS 读取消息的方法 package com example aws
  • SQS - 通过 ID 获取消息

    我是否可以使用 Amazon PHP SDK 根据消息 ID 从 SQS 队列获取消息 我是否必须获取队列中的所有消息 然后在服务器上对其进行过滤 我的服务器收到带有队列消息 ID 的 SNS 发起请求 我必须从来自 SQS 的消息数组中过
  • Erl 无法连接到本地 EPMD。为什么?

    Erlang R14B04 erts 5 8 5 source 64 bit rq 1 async threads 0 kernel poll false Eshell V5 8 5 abort with G root ip 10 101
  • 如何重置rabbitmq管理用户

    使用rabbitmq 我们可以安装管理插件 然后我们通过浏览器访问http localhost 55672 使用访客 访客 问题是 我无法再登录 因为我更改了密码并为角色输入了空白 有没有办法重置rabbitmq管理的用户 您可以通过以下方
  • ECS 任务定义是否支持卷映射语法?

    docker compose 规范支持卷映射语法services 例如 version 2 volumes jenkins home external true services jenkins build context args DOC
  • 从 EC2 实例 ID 创建 AMI 时,command.resolveMiddleware 不是 AWS SDK 的函数,想知道为什么?

    我当时正在开发 AWS SDK 版本 3 并尝试以编程方式从 EC2 实例创建 AMI 以下是我使用的脚本 Imports TODO Import the ec2 client const EC2Client CreateImageComm
  • 从 EC2 W2008 实例创建 AMI - 为什么从来没有获得密码?

    我正在尝试做什么 我正在尝试克隆 EC2视窗2008通过管理控制台实例 该实例基于 Windows Server2008 i386 Base v104 ami 92ba43fb 但上面安装了许多应用程序 我想为新实例保留这些应用程序 发生了
  • 如何在我的 AWS EC2 实例上安装特定字体?

    我有一个在 AWS EC2 Amazon Linux Elastic Beanstalk 实例上运行的 Python 应用程序 该实例需要某些特定字体才能生成输出 并且想知道如何在部署或实例启动过程中安装它们 我的代码在本地计算机 OS X
  • 限制 terraform 嵌套资源中的 AWS 安全组设置

    我有一个aws directory service directory服务中定义的资源 这会创建一个安全组 https registry terraform io providers hashicorp aws latest docs re
  • 将密钥对添加到现有 EC2 实例

    我被给予AWS控制台访问正在运行 2 个实例的帐户 但我无法关闭 在生产中 但是 我想获得对这些实例的 SSH 访问权限 是否可以创建一个新的密钥对并将其应用到实例 以便我可以通过 SSH 访问 获取现有的pem当前无法选择创建实例所用的密
  • 使用 C# 获取 ec2-instance 标签

    我不是开发人员 所以也许答案是有不同的解决方案 但我无法真正从 python 或其他东西翻译它 我尝试使用 AWS NET SDK 查找实例 然后获取实例的标签 我已经能够确定实例是否已启动并正在运行 我还了解了如何创建和删除标签 不在下面
  • 在 ec2 上托管 Rails

    我想将 Rails 部署到亚马逊 ec2 上 我看过 poolparty 和 ec2onrails 但似乎都不再维护了 人们用什么来做到这一点 都是自制的木偶和卡皮斯特拉诺 还是有一个项目可以让我继续下去 我可以推荐两个项目 如果您有一个
  • 将 sensu-client 连接到服务器时 AMQP 连接的 bad_header

    我已经安装了 sensu 和厨师社区食谱 但是 sensu客户端无法连接到服务器 导致rabbitmq连接错误 尝试连接时消息超时 这是详细的客户端日志 来自 sensu client log 的日志 timestamp 2014 07 0

随机推荐