gpt4 book ai didi

java - JMeter 消息吞吐量太低

转载 作者:行者123 更新时间:2023-11-28 20:52:17 25 4
gpt4 key购买 nike

我正在尝试使用 JMeter 来测试 ActiveMQ 集群。根据要求,作为测试,我需要每秒至少接收 2k 条消息。问题是我无法收到所需数量的消息。

我试图在进入集群之前针对本地队列对其进行测试,但结果并不理想。在安装了 Windows 10 的 PC(非常强大)中,我能做的最好的事情是每秒几百条消息。在装有 OSX 10 的 Mac (Macbook Pro) 中,我可以将其提升到 1.5k 左右。

我在 JMeter 中尝试过不同的配置:改变线程数、消息大小、请求和响应模式与仅请求...但没有任何效果。

当我运行自定义代码时,我可以在一秒钟内将大约 10k 条消息推送到队列中。是否有任何我可能遗漏的特定配置?我已浏览在线教程,但找不到任何解决问题的方法。

最佳答案

JMeter 默认配置适用于测试开发和调试,但在进行高负载时,您需要记住几个要点:

  1. 不要使用 GUI 执行测试,您应该使用 non-GUI mode 运行测试
  2. 默认 JVM 堆分配仅为 512 Mb,您肯定需要在 JMeter 启动脚本中提高此设置。这同样适用于堆栈大小和垃圾收集器设置。参见 JVM Tuning: Heapsize, Stacksize and Garbage Collection Fundamental文章以了解有关 JVM 内部结构的更多信息。
  3. 不要使用 Listeners在负载测试期间,它们会在资源利用方面造成巨大的开销,并且不会增加任何值(value)。
  4. 减少 Pre 的使用/Post ProcessorsAssertions到绝对最低限度。

参见 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure对于以上几点的解释和更多提示。

作为万一您达到单个负载生成器机器的硬件限制的最后手段,您始终可以考虑 running JMeter in distributed mode并添加更多 JMeter 引擎。

关于java - JMeter 消息吞吐量太低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41589249/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com