压力测试——jMeter常见问题处理
在执行jmeter的脚本的时候,可能会因为测试压力的增加导致的jmeter工具的一些报错,以下是一些常见的问题的处理方法:
解决内存溢出
在jmeter安装目录下的bin目录中,修改jmeter.bat的HEAP参数,修改HEAP的参数,其中-Xmx这个蚕食就设置成测试机内存的一半就可以。同时添加NEW的参数。
set HEAP=-Xms512m -Xmx3072m
set NEW=-XX:NewSize=256m -XX:MaxNewSize=512m
大并发量时接口被占用完的报错解决方法
当jmeter执行比较大的并发请求时,测试机的本身的端口号就会被占用完,而新生成的请求就会没有新的端口号可用,导致报错BindException:Address already in use:conned
处理这种问题,可在注册表中添加MaxUserPort和TCPTimedWaitDelay两个参数解决。具体如下:
1.启动注册表编辑器。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
2. 新建
值名称:MaxUserPort
值类型: DWORD
值数据: 65534(用十进制的方法写进去就可以,如果是十六进制,是FFFE,因为4个F是65535嘛)
有效范围: 5000 - 65534 (十进制)
默认: 0x1388 5000 (十进制)
3.新建
值名称:TCPTimedWaitDelay
值类型: DWORD
值数据: 0000001e(也就是30,不行可以用WINDOWS计算器,很方便,这个表示TIME_WAIT的秒数