非 HTTP 响应代码: java.net.BindException 在 JMeter 中负载测试期间的响应消息

huangapple go评论72阅读模式
英文:

Non HTTP response code: java.net.BindException Response message during load test in JMeter

问题

我想在JMeter中使用1500个虚拟用户进行负载测试,但我无法将负载增加到1000个虚拟用户以上。

我进行了一些研究和开发,并使用了两个负载生成器(LG1具有2个核心CPU,LG2具有4个核心CPU)。我观察到,使用LG1,我可以将负载增加到1000个虚拟用户,CPU使用率为100%(没有异常),但即使在600个虚拟用户之后,LG2开始出现“非HTTP响应代码:java.net.BindException”。

尽管LG2的配置高于LG1,但LG1的性能更好。

是否可以帮助回答以下两个问题:
1)为什么LG2会出现BindException错误,以及如何解决?
2)为什么具有4个核心的LG2无法比具有2个核心的LG1提高负载?

英文:

I want to do a load test with 1500VU in JMeter but I am NOT able to ramp up more than 1000VU.

I did some R&D and used two LGs (LG1 with 2 cores CPU and LG2 with 4 cores CPU) and I observed using LG1, I am able to ramp up upto 1000VU with 100% CPU usage(no exceptions), but LG2 starts throwing "Non HTTP response code: java.net.BindException" even after 600VU.

Even though the config is high for LG2 than LG1, LG1 is performing better.

Can anyone help to answer below two issues:

  1. Why LG2 is throwing BindException and what's the solution for that?
  2. Why LG2 with 4core is not able to ramp up more than LG1 with 2core?

答案1

得分: 1

我猜你正在尝试在Windows上运行JMeter。如果是这种情况,请考虑以下步骤:

  1. 增加临时端口范围
  2. 减少连接在TIME_WAIT状态下的最大时间
  3. 增加网络连接的最大数量,如果低于200

如果由于缺少管理员权限而无法执行任何这些操作,则唯一的选择是获取更多的计算机并在分布模式下运行JMeter测试。

英文:

I guess you're trying to run JMeter on Windows. If this is the case consider the following steps:

  1. Increase ephemeral ports range
  2. Decrease the maximum time the connection spends in TIME_WAIT state
  3. Increase the maximum number of network connections if it's below 200

If you cannot do any of these due to lack of administrative permissions - the only option would be get more machines and run your JMeter test in distributed mode

huangapple
  • 本文由 发表于 2023年7月13日 20:15:22
  • 转载请务必保留本文链接:https://go.coder-hub.com/76679272.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定