05 - Tomcat 线程池的配置与优化

Posted 平凡之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了05 - Tomcat 线程池的配置与优化相关的知识,希望对你有一定的参考价值。

添加 Executor

在server.xml中的Service节点里面,增加executor节点,然后配置connector的executor属性,如下:

<Executor
    name="tomcatThreadPool"
    namePrefix="catalina-exec-"
    maxThreads="3000"
    minSpareThreads="5"
    maxSpareThreads="20"
    acceptCount="20"
/>

参数说明:
namePrefix:线程池中线程的命名前缀。
maxThreads:Tomcat 可用于处理请求的最大线程数,默认是200。
minSpareThreads:Tomcat线程池的最小空闲线程数,等于初始的线程数。
maxSpareThreads:Tomcat最大空闲线程数,超过的会被关闭。
maxIdleTime:超过最小空闲线程数时,多的线程会等待这个时间长度,然后关闭。
acceptCount:当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理,默认100。

配置 Executor

在Connector中指定上面的 Executor

<Connector
    executor="tomcatThreadPool"
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    port="443"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    ....
    useBodyEncodingForURI="true"
/>






以上是关于05 - Tomcat 线程池的配置与优化的主要内容,如果未能解决你的问题,请参考以下文章

java tomcat jvm优化

tomcat优化

Elasticsearch线程池配置

36 | Tomcat I/O和线程池的并发调优

Tomcat调优及acceptCountmaxConnections与maxThreads参数的含义和关系

Tomcat调优及acceptCountmaxConnections与maxThreads参数的含义和关系