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

    线程池

      Executor代表了一个线程池,可以在Tomcat组件之间共享。使用线程池的好处在于减少了创建销毁线程的相关消耗,而且可以提高线程的使用效率。要想使用线程池,首先需要在 Service标签中配置。

    <Service name="Catalina">  
      
      <Executor name="tomcatThreadPool"   
             namePrefix="catalina-exec-"   
             maxThreads="1000"   
             minSpareThreads="100"  
             maxIdleTime="60000"  
             maxQueueSize="Integer.MAX_VALUE"  
             prestartminSpareThreads="false"  
             threadPriority="5"  
             className="org.apache.catalina.core.StandardThreadExecutor"/>  
      ...
    # 在Connector中指定线程池
       <Connector executor="tomcatThreadPool"  

    参数详解

    name
    注:线程池名称,用于 Connector中指定。
    
    namePrefix
    注:所创建的每个线程的名称前缀,一个单独的线程名称为 namePrefix+threadNumber。
    
    maxThreads
    注:池中最大线程数。
    
    minSpareThreads
    注:活跃线程数,也就是核心池线程数,这些线程不会被销毁,会一直存在。
    
    maxIdleTime
    注:线程空闲时间,超过该时间后,空闲线程会被销毁,默认值为6000(1分钟),单位毫秒。
    
    maxQueueSize
    注:在被执行前最大线程排队数目,默认为Int的最大值,也就是广义的无限。除非特殊情况,这个值不需要更改,否则会有请求不会被处理的情况发生。
    
    prestartminSpareThreads
    注:启动线程池时是否启动 minSpareThreads部分线程。默认值为false,即不启动。
    
    threadPriority
    注:线程池中线程优先级,默认值为5,值从1到10。
    
    className
    注:线程池实现类,未指定情况下,默认实现类为org.apache.catalina.core.StandardThreadExecutor。如果想使用自定义线程池首先需要实现 org.apache.catalina.Executor接口。

  • 相关阅读:
    路飞学城-Python爬虫集训-第二章
    路飞学城-Python爬虫集训-第一章
    pymysql 使用
    Mysql 用户管理和权限设置
    spring data jpa
    thymeleaf学习
    Spring Boot技术栈博客笔记(1)
    SpringBoot学习(2)
    使用idea引入注解@SpringBootApplication报错Cannot resolve symbol 'SpringBootApplication'
    SpringBoot学习(1)
  • 原文地址:https://www.cnblogs.com/xiangsikai/p/9156725.html
Copyright © 2011-2022 走看看