在我们测试的过程中,线程数过多时常常会导致内存溢出,接下来小编为大家提供内存溢出的解决方法:
1.在jmeter的bin目录下面找到jmeter.properties文件,以记事本形式打开进行编辑
2.在文件中找到以下字段进行修改
Windows环境下面进行修改
将
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时会出现下面的报错
下面介绍下在Linux系统上面如何进行修改:
Linux环境上面修改jmeter.sh
java $JVM_ARGS -Xms1G -Xmx5G -XX:MaxPermSize=512m -Dapple.laf.useScreenMenuBar=true -jar `dirname $0`/ApacheJMeter.jar "$@"
如果查看JDK的位数
# java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Server VM (build 20.1-b02, mixed mode)
如果是64位的话,最后一行会显示64-Bit
#java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)