jmeter单调脚本正常,压测中前三分钟内正常,后面开始陆续报错,服务器上看不到报错日志,怀疑是jmeter本身的问题。
由于客户端连接端口用尽,无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放,而是处于 TIME_WAIT 状态,默认等待60s后释放。
解决
先取消keep-alive,使用短连接。
扩大压力机端口范围
还是不行的话,查看压力机端口范围
vi /etc/sysctl.conf
在文件尾部添加:net.ipv4.ip_local_port_range = 10000 60999
或者初始设置为1024,看情况而定。
查看是否生效
sudo sysctl -p
cat /proc/sys/net/ipv4/ip_local_port_range
再次压测,问题解决