Jmeter之内存溢出解决办法

时间:2022-11-07 17:06:42

使用Jmeter进行压力测试会遇到一段时间后报内存溢出的错误,导致Jmeter卡死。这是因为Jmeter默认的HEAP配置的太小了,解决办法如下:

1、Windows环境

   修改jmeter.bat,如下两行:

           set HEAP=-Xms512m -Xmx512m
           set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m

     改为:

              set HEAP=-Xms512m -Xmx1024m
              set NEW=-XX:NewSize=128m -XX:MaxNewSize=1024m

根据经验:HEAP最多设置为物理内存的一半,如果HEAP超过物理内存的一半,会导致Jmeter运行变慢甚至内存溢出,原因是Java比较吃内存,占CPU。

注意:JDK32位的电脑Xms不能超过1500M,最多1378M,否则启动Jmeter会报错。

 

2、Linux环境

   修改jmeter.sh:

      java $JVM_ARGS -Xms1G -Xmx5G -XX:MaxPermSize=512m -Dapple.laf.useScreenMenuBar=true -jar `dirname $0`/ApacheJMeter.jar "$@"

 

3、查看JDK位数

   Jmeter之内存溢出解决办法

   如果JDK是64位的话,最后一行会显示64-Bit,如果没有,则是32位的。