JMeter内存不足异常:需修改哪个文件调整堆大小及配置内存?
解决JMeter命令行运行内存不足的配置方法
一、定位需编辑的配置文件
- Windows系统:编辑JMeter安装目录下的
jmeter.bat批处理文件 - Linux/macOS系统:编辑JMeter安装目录下的
jmetershell脚本
二、计算合理内存分配值
你的机器总内存为12GB,按建议分配80%的话,可分配9.6GB内存给JVM。为避免频繁GC,建议将初始堆内存(Xms)和最大堆内存(Xmx)设为一致,写成-Xms9g -Xmx9g(直接取整为9GB即可)。
三、修改内存配置步骤
- 打开对应的
jmeter.bat或jmeter文件 - 找到包含
HEAP的配置行,默认配置一般类似:
Windows下:
Linux/macOS下:set HEAP=-Xms1g -Xmx1gHEAP="-Xms1g -Xmx1g" - 将其替换为计算好的参数:
Windows:
Linux/macOS:set HEAP=-Xms9g -Xmx9gHEAP="-Xms9g -Xmx9g" - 保存文件后,重新启动JMeter命令行运行测试即可
额外优化建议
- 可添加新生代内存配置减少GC停顿,比如在HEAP参数后追加
-XX:NewSize=3g -XX:MaxNewSize=3g - 确保使用64位JDK,32位JVM最大仅能分配约4GB内存,无法支持9GB的内存需求
- 测试前关闭机器上其他非必要程序,释放更多内存给JMeter使用
内容的提问来源于stack exchange,提问作者coder
相关产品推荐
相关产品推荐

