JMeter学习(五)空闲连接时间的配置

在JMeter测试中遇到并发请求时出现'Non HTTP response code: java.net.SocketException'错误,原因是JMeter默认的keepAlive设置与httpclient4.idletimeout配置不匹配。解决方法是修改jmeter.properties文件,将httpclient4.idletimeout设为10-60s以避免过早关闭连接。实践证明,适当调整此值可以提高并发支持能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在调试上传文件的脚本并试运行时,发现并发数超过一定数量后,总会报“Non HTTP response code: java.net.SocketException/Non HTTP response message: Socket closed”的错误:

问题原因:在JMeter下,发送http 请求时,一般都是默认选择了use keepAlive,这个是连接协议,但其配置JMeter.properties中的时间设置默认却是注销的,也是是说,不会等待,一旦连接空闲,则立马断开了,导致我们压测中出现了事务失败的情形。
解决:修改jmeter.properties文件中 httpclient4.idletimeout,设置成自己觉得合理的时间,一般可设置成10-60s(表示连接空闲10s后才会断开),注意单位是ms。

打开jmeter.properties,修改如下:

Plain Text
httpclient4.idletimeout=10000   //修改时间为10秒,修改完后将行前的#去掉

注意:修改执行机的JMeter目录下的这个文件,这个值并不是越大越好,一般都在60秒内。

实际使用中证明,这个值为10秒时,可以支持100个并发,改变到30秒,可以支持150个并发,但是再多的并发,改大这个值也无济于事了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值