Tomcat优化之线程池优化

一、线程池优化

maxConnections  -- 最大连接数

1、受服务器内核影响,linux 通过 ulimit -a 查看服务目前情况

open files = 1024  (保守数值)调整这个数值  

vi /etc/security/limits.conf
在文件下面添加配置 
* soft     nofiles        65535
* hard    nofiles        65535

2、添加maxConntions的配置
    考虑:①对CPU要求更高(计算量较大)建议对这属性配置不要太大,过大时会对CPU产生竞争,会影响计算效率(如大数据相关)
               ②对IO要求比较大 正常访问数据库,跑逻辑程序,对CPU要求不是特别高的时候,服务器建议配置3000左右(64G内存,32核CPU),实际2300-2700左右。(配置后建议做压测,根据实际情况微调)
               ③配置的位置在:server.xml  -> connector
修改前:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

修改后:

<Connector port="8080" protocol="HTTP/1.1"
               maxConnections=”3000“
               connectionTimeout="20000"
               redirectPort="8443" />

maxThreads -- 最大线程数

默认值是200
推荐配置500-700(1000相当于我们对处理能力要求很高)
修改后

<Connector port="8080" protocol="HTTP/1.1"
               maxConnections=”3000“
               maxThreads=“500”
               connectionTimeout="20000"
               redirectPort="8443" />

acceptCount -- 最大排队等待数

在服务器线程不够用时,会生成一个请求队列,请求队列的最大队列数量就是accptCount
Tomcat最大可以处理的线程数量=maxThreads+acceptCount
推荐比maxThread持平或略小

修改后

<Connector port="8080" protocol="HTTP/1.1"
               maxConnections=”3000“
               maxThreads=“500”
               acceptCount="500"
               connectionTimeout="20000"
               redirectPort="8443" />

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容