本文主要测试并发超过配置参数时,各监控和服务软件的异常现象,方便定位问题。
一、线程配置参数
server.xml的四个线程配置参数如下:
maxThreads="60"
minSpareThreads="20"
maxSpareThreads="40"
acceptCount="600"
二、测试
2.1 jmeter每秒并发数:10
jmeter中的http监控结果能正常返回数据。
zabbix数据:
busy线程数为10,表现正常。
shell 查看tomcat端口请求线程数:10个左右,表现正常
nginx 的请求日志都是返回200,表现正常
2.2jmeter每秒并发数:25
zabbix :
shell:
2.1 jmeter每秒并发数:65
zabbix,busy到60:
shell,并发请求在65左右:
nginx:所有请求正常返回200.
2.1 jmeter每秒并发数:750
zabbix监控中max , busy,allocated都是60,达到最大配置:
shell:
nginx 的日志中部分请求报500错误。
结论:
当tomcat容器中,待处理的请求超过acceptCount队列,那么就会有请求被丢弃,拒绝处理。
当有并发时,不管是20,还是750,cpu会升到300%左右。