步骤
JMeter 创建一个测试计划、一个线程组、一个请求。
测试计划:
线程组(线程数这里设置为1000,模拟大流量):
请求(请求的路径是Tomcat自带的例子程序):
2.启动Tomcat。
3.开启JMeter测试,在View Results Tree中会看到大量失败的请求,请求的响应里有“Connection reset”异常,也就是前面提到的,当accept队列溢出时,服务端的内核发送了RST给客户端,使得客户端抛出了这个异常。
- 修改内核参数,在/etc/sysctl.conf中增加一行net.core.somaxconn=2048,然后执行命令sysctl -p
- 修改Tomcat参数acceptCount为2048,重启Tomcat
6.再次启动JMeter,这次所有请求会成功,看不到异常了。我们可以通过下面的命令看到系统中ESTABLISHED的连接数增大了,这是因为我们加大了accept队列的长度。





