如何 运行 在 jmeter 中使用 50 个循环对 3000 个用户进行负载测试?

How to run load test for 3000 users with 50 loops in jmeter?

我尝试 运行 在 jmeter 中对 3000 个用户和 50 个用户进行负载测试 loops.But 它显示了这个错误。

[9.746s][warning][os,thread] Failed to start thread - pthread_create failed (EAGAIN) for attributes: stacksize: 1024k, guardsize: 4k, detached.
Uncaught Exception java.lang.OutOfMemoryError: unable to create native thread: possibly out of memory or process/resource limits reached in thread Thread[StandardJMeterEngine,5,main]. See log file for details.

我还尝试使用以下方法增加堆大小 - HEAP:="-Xms2g -Xmx2g -XX:MaxMetaspaceSize=2g"

但同样的 OutOfMemory 问题仍然存在。 笔记本电脑的内存 - 8GB 感谢帮助

我认为修改堆没有帮助,此错误的根本原因是底层操作系统无法创建新线程。

  • 如果您使用的是 32 位 Java - 升级到 64-bit server JRE
  • 如果您是 运行 Linux - 使用 ulimit 命令检查 max user processes
  • 通过 -Xss 选项减少堆栈大小

如果您已经尝试了所有方法 - 唯一的解决方法是在另一台机器上安装 JMeter 并执行 Distributed Testing