JMeter内存溢出原因及解决办法
内存溢出解决方法:调整堆内存大小
1、windows环境下,修改jmeter.bat:
步骤:
①打开jmeter安装文件(可以用notepad++打开),bin目录下的jmeter.bat文件:
②找到set HEAP开头的内容,根据具体需要修改堆(heap)值大小,以及NEW分配的内存值大小:
set HEAP=-Xms256m -Xmx256m
set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
改为:
set HEAP=-Xms256m -Xmx1024m
set NEW=-XX:NewSize=128m -XX:MaxNewSize=512m
根据经验,heap最多设置为物理内存的一半,默认设置为512M.如果heap超过物理内存的一半,可能运行jmeter会慢,甚至出现内存溢出,原因java比较吃内存,占CPU.
注意:JDK32位的电脑Xmx不能超过1500m,最大1378m.否则在启动Jmeter时会报错
③修改完成后,关闭文件,重启jmeter即可。
PS:当需要模拟的线程数较大时,就需要根据具体情况采用分布式压测的方式了,这种修改堆大小的方法只适用一部分情