如何使用Jemeter压测Tomcat最大连接数?

近期闲来无事就测试一次Tomcat能够创建多少连接,达到最大连接数后会不会拒绝后来的请求?

首先创建一个简单的SpringBoot的工程,相关接口和配置如下图
配置文件
7BN3@{)B1582M72@8BSC(DF.png
测试接口
B)S}GWTIJ86UGRBP7EM1C0J.png

然后使用Jemter进行压测,按照理解Jemter应该同时发送超过400(server.tomcat.max-connections)个请求,之后的请求应该就会被拒绝,但是结果和预期并不符合
P~$`_W$TV2CK65O[DS[CEXN.png
{9FK(_UY})YNKP)AZTTM1_P.png
C}0{O`M[GZVH3V3SH$OKQ2W.png
D50TMUZOP)QK{`9DPLZ~VHC.png
可以看到后端接口每次只处理200个请求,等200个请求处理完毕后,会处理接下来200个请求,有没有大神解释下,为什么不是按照预想的一次性接受400个请求,超过的直接被拒绝掉

阅读 2.5k
2 个回答

当连接数达到最大值maxConnections后,tomcat会继续接收连接进行排队,但不会超过acceptCount值。当队列大小等于acceptCount时,后续的连接请求将被拒绝

我猜测这里面的600应该不是瞬间并发
理由就是你看聚合报告的样本数增加也不是瞬间增加的,而是固定数量依次增加

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题