当模拟并发请求较大或者脚本运行时间较长时,JMeter会报错 java.lang.OutOfMemoryError: Java heap space
原因:JMeter是一个纯Java开发的工具,内存由java虚拟机JVM管理,当内存回收不及时,堆内存不足时,就会报内存溢错误。
解决方案:jmeter jvm参数修改,打开jmeter安装目录/jmeter.bat文件,按关键字“HEAP”搜索
修改前:
if not defined HEAP (
rem See the unix startup file for the rationale of the following parameters,
rem including some tuning recommendations
set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m
)
修改后:
if not defined HEAP (
rem See the unix startup file for the rationale of the following parameters,
rem including some tuning recommendations
set HEAP=-Xms1g -Xmx4g -XX:MaxMetaspaceSize=2048m
)
set HEAP=-Xms1g -Xmx4g -XX:MaxMetaspaceSize=2048m
设置的值不要超过系统可用内存的一半