zoukankan      html  css  js  c++  java
  • Tomcat线程池配置

    以Tomcat8.5为例,HTTP1.1

    官方文档配置地址

    https://tomcat.apache.org/tomcat-8.5-doc/config/http.html

    <Connector port="8080" acceptCount="100" maxConnections="200" minSpareThreads="10"
               maxThreads="200"/>
    
    • acceptCount:请求等到队列大小。当Tomcat没有空闲线程处理连接请求时,新来的链接请求将放入等待队列,默认为100。当队列超过acceptCount后新连接将被拒绝。

    • maxConnections:Tomcat能处理的最大并发连接数.当超过后还会接收连接并放入等待队列(acceptCount控制),连接会等待,不能被处理。BIO默认是maxThreads. 对于NIO和NIO2,默认值为10000。对于APR /native,默认值为8192。

      仅对于NIO / NIO2,将该值设置为-1将禁用maxConnections功能,并且不计算连接数。

    • minSpareThreads:线程池最小线程数,默认为10。该配置指定线程池可以维持的空闲线程数量。(始终保持运行状态的最小线程数。 这包括活动线程和空闲线程。 如果未指定,则使用默认值10。 如果执行程序与此连接器相关联,则此属性将被忽略,因为连接器将使用执行程序而不是内部线程池执行任务。 请注意,如果配置了执行程序,则将正确记录为此属性设置的任何值,但会将其报告为(例如,通过JMX)-1,以表明未使用该值。)

    • maxThreads:线程池最大线程数,默认为200。当线程池空闲一段时间后会解释放到只保留minSpareThreads个线程。

    举例,假设maxThreads=100,maxConnections=50,acceptCount=50,假设并发请求为200,则50个线程并发处理50个并发连接,50个连接进入等待队列,剩余100个将被拒绝。也就是说Tomca最大并发线程数是由maxThreads和maxConnections中最小的一个决定的。BIO场景下maxConnections和maxThreads是一样的,当我们需要一个长连接场景时,应使用NIO模式,并发连接是大于线程数的。
    在这里插入图片描述

  • 相关阅读:
    c#添加托盘图标右键后显示菜单选项
    mysql workbench修改字段报错
    mysql增删改查语句
    连接win7的mysql很慢解决方法
    uvm_cmdline_processor
    cadence help文件库调出指令 :cdnshelp
    设置开机自动运行vncserver
    Vector bit-select and part-select addressing verilog片选写法
    Verilog三段式状态机描述
    同步FIFO学习
  • 原文地址:https://www.cnblogs.com/niugang0920/p/12574680.html
Copyright © 2011-2022 走看看