jmeter中timeout值怎么设置_Tomcat server.xml中配置的connectionTimeout参数无效?

在tomcat的配置文件server.xml中,可以设置Connector的参数,其中包含超时参数connectionTimeout。

本人对其中几个重要参数大致理解为(应该理解错了):

connectionTimeout:一个请求最多等待时间,超过则报错。

maxConnections:最多同时连接数,连接上不一定处理。超过连接数,则排队。

maxThreads:同时处理的线程数,经测试,理解无误。

acceptCount:等待队列长度,当超越maxConnections时,会进入等待队列。等待队列满之后,直接拒绝请求。

对这些参数进行测试,然而遇到了疑惑。

第一组测试

设置:

connectionTimeout为10000,

maxConnections为2,

maxThreads为2,

acceptCount为2。

connectionTimeout="10000"

redirectPort="8443"

maxConnections="2" maxThreads="2" acceptCount="2"/>

写一个controller测试,sleep30s。

@RequestMapping(value = "sync")

@ResponseBody

public String sync() throws InterruptedException {

Thread.sleep(30000L);

return "test success";

}

使用JMeter进行测试。

66e87d445888f4cfb19e4b31c119a5b7.png

测试结果,尝试三次都一致,如下:

一共20次请求,失败14个。

96e9c1244b0c49efef258dad52267d08.png

dcd4bb2651704656abda36a58999981b.png

前两个请求,的确是在30s之后返回。

d2eacf8b7b863ae622f0ae562cc2e8b1.png

失败的14个请求,都在52s左右。

169e73bccf59ad537aa851bd6db92779.png

最后四个成功的请求,前两个在60s时返回,后两个在90s时返回。符合sleep30s的时间点。

分析:

同时生成20次请求。

maxConnections=2,有两个请求被连接上,acceptCount=2,有两个请求进行排队。

其余16个请求,应该在某处也“排着队”吧,就称为野生请求。

maxThreads=2,两个请求同时处理,30s后,这两个请求处理完毕。

排队的两个请求连接,两个野生请求进入队列。

莫名其妙地在52s时,进行了一波等待超时判断,14个野生请求全部失败。

已经连接和在排队中的请求后续会成功处理。

疑问:

52s来自何处,设置的connectionTimeout是10s呢。

第二组测试

connectionTimeout="10000"

redirectPort="8443"

maxConnections="10" maxThreads="2" acceptCount="5"/>

其中设置:

connectionTimeout为10000,

maxConnections为10,

maxThreads为2,

acceptCount为5。

仍发起20次请求,共失败5次。

147dad5a539910e0e84143f64d56df60.png

失败的4次请求,仍然是在52s左右失败。

4b47e1bfd40b95ca64bf6b9caf94f525.png

之后的请求返回时间符合每30s返回两个的预期。

分析:

连接10个,等待5个,每次处理2个。

30s后,2个请求成功返回,连接数变成8个,按照第一组的分析,会有2个等待请求顶上去。那么,最终失败的请求应该是3个,然而结果是5个。

猜测需要等到连接的请求全部完成后或完成一部分之后,等待请求才会顶上去,野生请求只能干等。

疑问:

connectionTimeout参数作用是?52s何处来?

其他几个参数理解是否正确?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值