首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JMeter脚本不是在Linux上实现所需的TPS/RPS,而是在运行于GUI模式的MAC系统上实现的。

问JMeter脚本不是在Linux上实现所需的TPS/RPS,而是在运行于GUI模式的MAC系统上实现的。
EN

Stack Overflow用户
提问于 2022-09-21 09:42:24
回答 1查看 47关注 0票数 0

我有一个脚本,在其中我使用吞吐量成形计时器来实现100 TPS/RPS。

当脚本使用GUI模式在MAC系统上执行时,可以实现~99 TPS/RPS。但是,当我在Linux系统上执行它时,它几乎不会超过60个RPS/TPS。

以下是在Linux上接收到的日志(相同的脚本,因此线程组设置保持为):

当前线程组设备服务中没有可用的空闲线程

以下是一些详细情况:

  1. JMeter版本在这两个系统上都是5.4.3 (将相同的JMeter复制到Linux中)
  2. MAC版本是: 11.6
  3. Linux操作系统版本是:RedHatEnterpriseLinux8.6 (Ootpa)
  4. 下面给出了这两个系统上的堆设置(甚至在Linux上将其增加到13g ):

"${HEAP:="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"}“

请让我知道,我应该做哪些设置,以实现类似的TPS/RPS与我的GUI在MAC上。

线程组设置,如所附图像.所示

​

EN

回答 1

Stack Overflow用户

发布于 2022-09-21 09:55:20

  1. 首先,GUI模式用于测试开发和调试,当涉及到测试执行时,您应该在命令行非GUI模式中运行测试,以获得准确的结果。
  2. 确保使用相同的Java版本
  3. 确保使用相同(或至少类似)的硬件。
  4. 确保检查资源消耗(CPU、RAM、磁盘、网络、交换使用等)。当您遇到硬件或OS限制时,您可能会得到错误的负面结果,因为JMeter无法尽可能快地运行请求,如果是这样,您可能需要另一个Linux盒和在分布式模式下运行JMeter。
  5. No free threads available in current Thread Group意味着没有足够的线程来达到/保持所需的吞吐量,您可以尝试增加线程组中的线程数量,或者切换到并发线程组,并通过反馈函数将其连接到吞吐量整形定时器
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73798633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档