如何让 RabbitMQ 具有可扩展性?

2023-12-09

我尝试测试RabbitMQ,但发现rabbitmq存在一些问题: 如果我创建了一个包含 3 个节点的集群,我无法发布/交付超过 6000/s。 另一方面,如果我使用一个节点,我可以发布/交付直到 25000/s。 这意味着,添加的节点越多,性能就越差。

但从这篇文章来看:https://blog.pivotal.io/pivotal/products/rabbitmq-hits-one-million-messages-per-second-on-google-compute-engine

他们可以发表超过100万篇,那么他们是如何做到的呢? 我想让 RabbitMQ 每秒处理超过 100 万条消息


我通过添加负载均衡器解决了这个问题。 生产者将数据发送到负载均衡器。另一方面,负载均衡器id连接到rabbitmq的许多节点,但这些节点之间没有连接(以避免影响性能的同步)。 因此,通过这种方式,我可以增加吞吐量(例如:3 个节点= 3x 吞吐量)。

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

如何让 RabbitMQ 具有可扩展性? 的相关文章

  • 为什么用scala写的代码比用java写的慢6倍?

    我不确定我在编写 scala 代码时是否犯了一些错误 问题是 The four adjacent digits in the 1000 digit number that have the greatest product are 9 9
  • 带有闭包的 JavaScript 性能

    var name function n var digits one two three four return digits n var namenew function digits one two three four return
  • 为什么 System.nanoTime() 比 System.currentTimeMillis() 慢(性能)?

    今天我做了一个快速基准测试来测试速度性能System nanoTime and System currentTimeMillis long startTime System nanoTime for int i 0 i lt 1000000
  • 生产者/消费者的不同语言

    我想知道是否可以通过 AMQP 和 RabbitMQ 对生产者和消费者使用不同的语言 例如 Java 代表生产者 python php 代表消费者 或者反之亦然 是的 AMQP 与语言无关 这意味着只要您有可以连接到 AMQP 的客户端sa
  • 将 pandas 数据帧拆分为子数据帧列表的最快方法

    我有一个大数据框df我有完整的清单indices中的独特元素df index 我现在想创建一个由元素索引的所有子数据帧的列表indices 具体来说 list df df loc x for x in indices 运行这个命令需要很长时
  • 将 sensu-client 连接到服务器时 AMQP 连接的 bad_header

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

    我的文档看起来像这样 id ObjectId 572c4bffd073dd581edae045 name What s New in PHP 7 description PHP 7 is the first new major versio
  • JavaFX 中 WebView 的性能

    我有一个 HTML5 UI 和一个 Java 后端 并且希望避免在纯 java 中重建 HTML ui 所以我的想法是运行本地 Web 服务器并使用 WebView 在 本机 窗口中呈现它 解决方案似乎是使用可以嵌入到 swing 中的 J
  • .pdbs 会减慢发布应用程序的速度吗?

    如果 dll 中包含 pdb 程序调试 文件 则行号将出现在引发的任何异常的堆栈跟踪中 这会影响应用程序的性能吗 这个问题与发布与调试 即优化 无关 这是关于拥有 pdb 文件的性能影响 每次抛出异常时都会读取 pdb 文件吗 加载程序集时
  • 即使在急切加载之后,belongs_to 关联也会单独加载

    我有以下关联 class Picture lt ActiveRecord Base belongs to user end class User lt ActiveRecord Base has many pictures end 在我的
  • Pandas dataframe:每批行的操作

    我有一个熊猫数据框df我想计算每批行的一些统计信息 例如 假设我有一个batch size 200000 对于每批batch sizerows 我想要一列的唯一值的数量ID我的数据框 我怎样才能做这样的事情呢 这是我想要的一个例子 prin
  • 红宝石接球和效率

    catch在 Ruby 中意味着跳出深度嵌套的代码 在 Java 中 例如用Java也可以达到同样的效果try catch用于处理异常 但它被认为是糟糕的解决方案 而且效率非常低 在 Ruby 中 我们有处理异常的方法begin raise
  • 如何用 kevent() 替换 select() 以获得更高的性能?

    来自Kqueue 维基百科页面 http en wikipedia org wiki Kqueue Kqueue 在内核和用户空间之间提供高效的输入和输出事件管道 因此 可以修改事件过滤器以及接收待处理事件 同时每次主事件循环迭代仅使用对
  • 为 PostgreSQL 查询选择正确的索引

    简化表 CREATE TABLE products product no integer PRIMARY KEY sales integer status varchar 16 category varchar 16 CREATE INDE
  • 如何检查设备是否“快”足够

    我找不到更好的措辞来回答我的问题 在我的应用程序中的某个时刻 我设置了一些非常密集的动画 事实是 在高端设备上 动画运行流畅且赏心悦目 另一方面 我测试的一款低端设备在制作动画时的性能非常糟糕 为了将用户体验放在第一位 我想在计算能力足够的
  • getItem 与 getItemAtPosition

    有两种方法可以获取列表视图中的选定项目 list getAdapter getItem position list getItemAtPosition position 我的问题是 哪一种是首选的做法 我见过人们同时使用这两种方法 您可以使
  • 正则表达式库基准

    我最近一直想知道正则表达式实现的性能 并且很难想出很多有用的信息 它很容易对浏览器 javascript 正则表达式性能进行基准测试 网上有很多工具 Chrome 和 Opera 中的 javascript 正则表达式实现几乎摧毁了所有其他
  • 有没有更简单的方法来处理复选框?

    在 vb net 中 我有一个包含一组四个复选框的表单 每个复选框都表示 选中时 用户想要向其订单添加特殊指令 代码如下所示 If SpecialInstruction1CheckBox Checked Then AddSpecialIns
  • 使用 React.forwardRef 与自定义 ref prop 的价值

    我看到React forwardRef从反应文档来看 似乎是将引用传递给子功能组件的认可方式 const FancyButton React forwardRef props ref gt
  • 如何清除 APC 缓存而不使 Apache 崩溃?

    如果 APC 存储大量条目 清除它们会导致 httpd 崩溃 如果 apc clear cache user 花费的时间超过 phps max execution time 调用 apc clear cache 的脚本 将在之前被 php

随机推荐

  • 尝试访问 CIFilter 的 outputImage 时出现“无法识别的选择器”

    我第一次尝试 Core Image 在 OS X 10 7 3 上 但遇到了困难 我确信我正在做的事情很愚蠢 只需要更熟悉该框架的人向我指出 考虑以下代码 让我们规定imageURL是指向磁盘上 JPG 的有效文件 URL CIImage
  • 如何在 Swift 中获取小数位数并加一?

    我需要在最后一个小数位实现加函数 例如 print plusOne 0 0001 gt 0 0002 print plusOne 0 000001 gt 0 000002 print plusOne 22 gt 23 有人做过这件事吗 您可
  • Struts2 jQuery struts-plugin.xml 无效

    我已经设置了一个由 Struts2 Springs JPA 组合而成的项目 我最近遇到了Struts2 Jquery 插件 在我的项目中使用这个插件 struts2 jquery plugin 3 5 1 jar 时出现错误 Unable
  • 如何获取连接到 Android 设备的 USB 配件列表?

    我有一个基于棒棒糖的安卓盒子 该盒子有一个 USB 端口 类似于 Android 手机中的微型 USB 端口 我想检查是否有任何主机连接到 USB 端口 并且 Android 盒子处于设备模式 类似于手机连接到 PC 时的情况 至少 我只需
  • 哪些类型的控件不会显示在 Spy++/Inspect 中?

    我们正在开发一个 Windows 桌面应用程序 该应用程序可以从其他应用程序上的其他控件中提取值 我们的产品非常适合大多数桌面应用程序 我注意到某些控件没有显示在检查和 Spy 中 例如 在 GP 2015 客户端中 只有少数控件可在 Sp
  • 计算平均字长和平均句子长度的 Java 代码

    好吧 我是一个相对较新的程序员 在这项任务上我遇到了很大的困难 作业是创建一个 2 类 java 代码 该代码将读取一个文件 具体是一本书 并对其进行分析以计算平均句子长度和平均单词长度 正确的输出应该是这样的 gt java WordMa
  • python相同unicode的不同长度

    我发现关于 unicode 的一些事情很奇怪 根据我的理解 如果我 u string 类型将是 unicode 但为什么它们的长度不同 print len u New York u200b 14 print type u New York
  • hdfs 权限被拒绝

    我是hadoop分布式文件系统的新手 我已经在我的机器上完成了hadoop单节点的完整安装 但是之后当我将数据上传到hdfs时 它给出了错误消息Permission Denied 来自终端的消息 包含命令 hduser ubuntu usr
  • 为什么我们在c++中需要接口或纯虚函数

    为什么我们在c 中需要接口 纯虚函数或抽象类 我们可以不使用抽象类 而使用一个基类并在其中定义虚函数 并在派生类中重写该虚函数吗 上述方法有什么优点和缺点 除了我们可以创建基类的对象 纯虚函数适用于没有合理的方法在基类中实现该函数的情况 例
  • 如何重新排序整数的字节? [复制]

    这个问题在这里已经有答案了 我的任务是使用 C 将数据文件从大端转换为小端 反之亦然 我已经在网上查找了大约 3 个小时的其他示例并阅读了我的教科书 但是我对如何开始这个问题非常困惑功能 到目前为止 我的事件顺序是正确的 1 到 4 但在我
  • 适用于所有 iOS (iPhone/iPad/Apple Watch) 设备的 App Store Connect 屏幕截图尺寸

    我正在尝试向 App Store 提交新的应用程序 但现在 Apple 要求提供 4 7 英寸和 5 5 英寸 iPhone 的屏幕截图 有人有这些截图规格 尺寸 吗 我尝试过 640 x 1136 纵向 640 x 1096 纵向 113
  • 如何解决问题:int无法解引用

    这里我有一些值 其中两个是整数 并且我无法对它们调用方法 因为它们不是引用 我该如何解决这个问题 String srcAddr dstAddr protocol int srcPort dstPort public int hashCode
  • 如何在 Django Rest Framework 中显示 ManyToMany 字段的值而不是 Id?

    Model class Genre models Model name models CharField max length 100 def str self return self name class Song models Mode
  • 带有悬挂缩进的内联描述列表

    我想创建一个描述列表 其中每个术语和描述对都出现在一行中 但这些 行 带有悬挂缩进 以防它们换行 这是我想要的视觉效果 但使用p元素代替 p margin 0 0 0 2em text indent 2em p b H b Himenaeo
  • 为什么 Java 8 中的函数式接口有一个抽象方法?

    我们知道 在Java 8中 引入了函数式接口的概念 函数式接口有一个abstract方法和几个默认或静态方法是可能的 但为什么功能接口应该只有一个抽象方法呢 如果接口有多个抽象方法 为什么这不是函数式接口 函数式接口也称为单一抽象方法接口引
  • 具有多个配置文件模型的 Django-allauth

    我有一个 django 项目 其中有多个配置文件模型 每个模型都有一个指向 User 模型的外键 它用django allauth进行注册 目前 当使用社交帐户注册时 用户注册 创建用户和社交帐户 然后将用户重定向到要填写的表单 具体取决于
  • Python:numpy数组列表,不能执行index()吗?

    center 是 numpy 数组的列表 Shortest dist 1 是一个 numpy 数组 但是 当我这样做时 centers index shortest dist 1 它告诉我 ValueError The truth valu
  • TCP 多播和多线程

    我需要提出能够可靠地多播到其他客户端的客户端 这意味着我将使用 TCP 在多播组内的客户端之间进行可靠连接 这不是达到了 n 2 个连接吗 这对我来说似乎有点愚蠢 是否 不应该有一种方法可以更轻松 更可靠地进行多播 编辑 UNIX C 编辑
  • 页面未正确重定向 Ruby on Rails

    由于某种原因 我在单击页面的受保护部分时收到错误 Firefox 页面未正确重定向 这是我在我的中使用的方法ApplicationController protected def authorize unless User find by
  • 如何让 RabbitMQ 具有可扩展性?

    我尝试测试RabbitMQ 但发现rabbitmq存在一些问题 如果我创建了一个包含 3 个节点的集群 我无法发布 交付超过 6000 s 另一方面 如果我使用一个节点 我可以发布 交付直到 25000 s 这意味着 添加的节点越多 性能就