Jmeter测试遇到过的坑,如何解决
1、线程数过多时常常会导致内存溢出
在jmeter的bin目录下面找到jmeter.bat文件,以记事本形式打开进行编辑,
在Windows环境下面进行修改
将
set HEAP =-Xms256m -Xmx256m
set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
改成
set HEAP=-Xms1024m -Xmx4096m
set NEW=-XX:NewSize=512m -XX:MaxNewSize=1024m
(4.0以及以上的在这设置)
友情提示:
heap最多设置为物理内存的一半,默认设置为512M.如果heap超过物理内存的一半,可能运行jmeter会慢,甚至出现内存溢出,原因java比较吃内存,占CPU。
另外注意:JDK32位的电脑Xmx不能超过1500m,最大1378m.否则在启动Jmeter时会出现下面的报错(最好用64位的);
2、大量出现“端口占用”情况
扩大端口数量;
缩短TIME_WAIT的等待时间,提高端口的使用率;
修改注册表
目录:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
右键新建参数(DWORD),并设置值。
lMaxUserPort 先选择十进制 再设置值65534
TcpTimedWaitDelay 先选择十进制 再设置值30
重启windows,配置项生效