jmeter.bat配置(主要关于OOM)

  jmeter.bat是jmeter在windows系统下的启动文件。在使用jmeter压测,线程数设置过多时可能会报内存溢出(Out Of Memory Error),这时候可以去尝试调整一下jmeter.bat文件里面默认的配置。

  注:我使用的jmeter版本是3.2,有时候在Q群看到有人问安装一个插件之后为什么报错,这时候需要注意是不是版本兼容性问题,很多插件都比jmeter版本滞后了。

1、堆值(Heap)

一般来说,堆值Heap最多设置为物理内存的一半,默认为512M。如果此值超过物理内存的一半,jmeter运行速度会变慢,甚至会出现“内存溢出”错误。(Xms、Xmx的含义看下面)

我设置的为【set HEAP=-Xms256m -Xmx1024m】。说明:jdk32位的电脑Xmx不能超过1400,最高为1378。

----------------------------------------------------------分割线---------------------------------------------------------------

如果服务器端报错“内存溢出”,进入Tomcat,修改JVM的maxheapmemory。在%CATALINA_HOME%\bin目录下,catalina.bat文件:echo Using CATALINA_BASE: %CATALINA_BASE%之前,加上:

set JAVA_OPTS=%JAVA_OPTS% -server –Xms512m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512M

参数说明:

Xms:Tomcat中JVM内存初始设置参数,默认为512M;

Xmx:Tomcat中JVM内存最大设置参数,默认为512M;

-XX:PermSize=256M
设置永久域(非堆内存)的初始值,默认是物理内存的1/64, 建议不要超过256M;
-XX:MaxPermSize=512M
设置永久域的最大值,默认是物理内存的1/4,建议修改为512M;

----------------------------------------------------------------------------------------------------------------------------------

2、GC相关设置

这个是JVM中GC算法的一个相关设置,其中:

1)MaxGCPauseMillis:每次年轻代垃圾回收的最长时间,如果无法满足此时间,JVM会自动调整年轻代大小,以满足此值。(此参数请谨慎使用!)

2)G1ReservePercent:使用g1收集器时设置的保留java堆大小,防止JVM在回收存活或者晋升对象的时候,栈区域溢出发生失败。范围是0到50,默认是10%。

 

3、发生OOM时,生成分析文件

在发生OOM时dump出当前的内存转储快照,生成dump文件(可用mat分析),默认存储在jvm运行环境目录。后面也可以添加参数-XX:HeapDumpPath=/path/heap/dump,说明dump文件存储的路径。

 

转载于:https://www.cnblogs.com/zichuan/p/10196379.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值