tomcat线程池配置

2023-11-06

以Tomcat8为例
配置方式一:

<Connector port="8080" acceptCount="100" maxConnections="200" 
		minSpareThreads="10" maxThreads="200"/>
  • acceptCount:请求等待队列大小。当Tomcat没有空间线程处理连接请求时,新来的连接请求放入等待队列,默认为100。当队列超过acceptCount后,新连接请求将被拒绝
  • maxConnections:Tomcat能处理的最大并发连接数。当超过后还是会接收并放入等待队列(acceptCount控制),连接会等待,不能被处理。BIO默认是maxThreads数量。NIO和NIO2默认是10000,ARP默认是8192
  • minSpareThreads:线程池最小线程数,默认是10.改配置指定线程池可以维持的空闲线程数量
  • maxThreads:线程池最大线程数,默认是200.当线程池空闲一段时间后会释放只保留minSpareThreads个线程
    Tomcat最大并发线程数是由maxThreads和maxConnections中最小的一个决定。BIO场景下maxConnections和maxThreads是一样的,当需要长连接场景时,应使用NIO模式,并发连接数是大于线程数的。

配置方式二:

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" deamon="true" 
	minSpareThreads="25" maxThreads="200" maxIdleTime="60000"
	maxQueueSize="Integer.MAX_VALUE" prestartminSpareThreads="false"/>
<Connector port="8080" executor="tomcatThreadPool" 
	executorTerminationTimeoutMillis="5000"/>

此处使用了org.apache.catalina.Executor实现,表示一个可在多个Connector间共享的线程池,而且有丰富的配置

  • namePrefix:创建的Tomcat线程名字的前缀
  • deamon:是否守护线程运行,默认true
  • minSpareThreads:线程池最小线程数,默认25
  • maxThreads:线程池最大线程数,默认200
  • maxIdleTime:空闲线程池的存活时间,默认60s。当线程空闲超过该时间后,线程将被回收
  • maxQueueSize:任务队列最大大小,默认是Integer.MAX_VALUE,建议该小,可以认为是maxConnections
  • prestartminSpareThreads:是否在Tomcat启动时就创建minSpareThreads个线程放入线程池,默认false
  • executorTerminationTimeoutMillis:在停止Executor时,等待请求处理线程终止的超时时间
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

tomcat线程池配置 的相关文章

随机推荐

  • Android数据加密之MD5加密

    一 前言 项目中无论是密码的存储或者说判断文件是否是同一文件 都会用到MD5算法 今天来总结一下MD5加密算法 二 什么是MD5加密 MD5英文全称 Message Digest Algorithm 5 翻译过来是 消息摘要算法5 由MD2
  • c语言结构体变量所占字节计算,【C语言】结构体占用字节数及存储与空间分配...

    我们都知道在数据类型中 char类型占1个字节 short占2个字节 int占4个字节 long占8个字节等等 在计算结构体大小时需要考虑其内存布局 结构体在内存中存放是按单元存放的 每个单元多大取决于结构体中最大基本类型的大小 下面我们看
  • 网络工程师常用的命令整理-windows版,还不快收藏起来

    一 ping命令 1 ping ping是最常用的实用程序之一 用来确定网络的连通性 ping是个使用频率极高的实用程序 主要用于确定网络的连通性pi 如果ping通一个地址 那么基本可以排除物理层数据链路层的故障等 ping 的命令格式通
  • 使用联机搜索求解Wumpus World

    使用 JavaScript 重写的算法网页 https yuqingxiong github io Wumpus World Problem github仓库地址 https github com YuqingXiong Wumpus Wo
  • CUDA 分块矩阵乘法

    cpp文件 include stdafx h include
  • mips使用buildroot,交叉静态编译file程序出现ld: cannot find -lz错误解决过程

    最近用unbutu X64 版本16 04 使用buildroot 版本2020 2 交叉编译一个mips的目标机 因为目标机没有支持库所以很多程序使用静态编译 这次的主角是file这个程序 运行该程序能知道各类文件的类型及追踪需要的支持库
  • Verilog实现异步FIFO(重难点)

    FIFO总概 图来自文章Simulation and Synthesis Techniques for Asynchronous FIFO Design 一个异步FIFO一共由五个基本模块组成 分别是 RAM存储器模块 FIFO写地址以及写
  • 分享一个基于springboot+vue的职业生涯规划系统源码

    作者 计算机源码社 个人简介 本人七年开发经验 擅长Java Python PHP NET 微信小程序 爬虫 大数据等 大家有这一块的问题可以一起交流 学习资料 程序开发 技术解答 文档报告 JavaWeb项目 微信小程序项目 Python
  • tp摄像头的默认地址_TP-Link路由器默认管理员密码是什么 路由器默认管理员密码介绍【详解】...

    TP Link路由器默认管理员密码是多少 最近有网友咨询了小编这样的问题 其实关于TP Link路由器的默认管理员密码是要根据路由器的型号而介绍的 因为有些型号的TP Link路由器是有默认管理员用户名和密码的 而有些型号是没有的 这对这个
  • Flutter 容器(5) - SizedBoxSizedBox

    SizedBox 两种用法 一是可用来设置两个widget之间的间距 二是可以用来限制子组件的大小 import package flutter material dart class AuthList extends StatelessW
  • squid 用户通过NCSA认证

    Squid的用户认证设置 默认时 Squid本身不带任何认证程序 但是可以通过外部认证程序来实现用户认证 一般有以下的认证程序 LDAP认证 SMB认证 基于mysql的认证 基于sock5的密码认证和基于Radius的认证 下面介绍常用的
  • STM32设置为I2C从机

    硬件平台 STM32F401 编辑器 keil 5 18 操作系统 win7 一 I2C协议 在传输数据的时候 SDA线必须在时钟的高电平周期保持稳定 SDA的高或低电平状态只有在SCL 线的时钟信号是低电平时才能改变 起始和停止条件 SC
  • JavaScript的三大组成

    文章目录 一 JavaScript三大组成 1 ECMAScript 2 DOM 3 BOM 总结 一 JavaScript三大组成 JavaScript的三个部分为 ECMAScript JavaScript语法规范 是JS的基础也是核心
  • SpringBoot打包jar包并后台运行

    最近又进步了 我一直习惯直接在Intellij Idea中直接运行写好的程序 不过也是因为仅仅是写个模拟接口而已 后来到新公司要负责java后台 开始习惯把项目部署到外部Tomcat去测试 或者打成war包让运维去linux上面部署 不过
  • 基于OpenCV的视频道路车道检测

    基于OpenCV的视频道路车道检测 基于OpenCV的视频道路车道检测 前言 综述 运行方法 车道检测的实现 路面图像二值化 基于透视变换提取车道区域 基于二次多项式拟合车道线 计算曲率半径与车辆的偏移距离 用车道区域标注原始图像 总结 E
  • 网站服务器评测,9.2分! 浪潮服务器受到海外权威专业评测网站肯定

    目前 浪潮服务器业务覆盖全球120个国家和地区 拥有8个全球研发中心 6个全球生产中心以及2个全球服务中心 海外权威服务器专业评测网站ServeTheHome 简称STH 曾对浪潮NE5260M5边缘服务器进行测评 该服务器斩获9 2的高分
  • threejs实现一个固定大小的3d标点

    需求背景 需要在3d模型上实现标注的功能 一开始是直接通过添加一个普通的mesh来实现的 但是这样就会有一个问题 当视图缩放的时候 标注也会跟着一起放大缩小 影响视觉效果 因此需要实现一个不会随着视图一起放大或者缩小的mesh 实现思路 明
  • MongoDB update数据语法

    mongodb更新有两个命令 1 update 命令 db collection update criteria objNew upsert multi criteria update的查询条件 类似sql update查询内where后面
  • Qt自定义窗口部件/控件(实现一个十六进制微调框SpinBox)

    目录 1 自定义Qt窗口部件 控件 2 十六进制微调框 SpinBox 2 1 实现思路 2 2 源码 3 使用方法 3 1 代码添加自定义窗口部件 控件 3 2 Qt设计师添加自定义窗口部件 控件 3 3 运行效果 4 缺点 1 自定义Q
  • tomcat线程池配置

    以Tomcat8为例 配置方式一