转载于:https://blog.csdn.net/u011622226/article/details/72510385
今天云平台上的设备中心服务器由于几百台机器同时下发人员,瞬间卡爆,几分钟才响应;然后就看到了这位博主的文章,复制上去修改了端口,然后重启Tomcat后效果直接显示出来了,原先几分钟的现在直接700ms左右
Tomcat的高并发配置调优
在Tomcat的配置文件server.xml中添加如下,即可解决高并发问题
<Executor name="tomcatThreadPool" # 配置TOMCAT共享线程池,NAME为名称
namePrefix="HTTP-8088-exec-" # 线程的名字前缀,用于标记线程名称
prestartminSpareThreads="true" # executor启动时,是否开启最小的线程数
maxThreads="5000" # 允许的最大线程池里的线程数量,默认是200,大的并发应该设置的高一些,这里设置可以支持到5000并发
maxQueueSize="100" # 任务队列上限
minSpareThreads="50" # 最小的保持活跃的线程数量,默认是25.这个要根据负载情况自行调整了。太小了就影响反应速度,太大了白白占用资源
maxIdleTime="10000" # 超过最小活跃线程数量的线程,如果空闲时间超过这个设置后,会被关别。默认是1分钟。
/>
<Connector port="8088" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="5000" redirectPort="443" proxyPort="443" executor="tomcatThreadPool" # 采用上面的共享线程池
URIEncoding="UTF-8"/>