Tomcat网络处理 参数调优

本文探讨了Tomcat从BIO到NIO的网络处理线程模型演进,包括BIO+同步Servlet、APR+异步Servlet及NIO+异步Servlet的不同处理方式。同时,深入分析了Tomcat参数调优策略,如ConnectionTimeout、acceptCount和maxThreads等关键参数的设置原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Tomcat网络处理线程模型

1、BIO+同步Servlet
Tomcat7及之前使用,一个请求,一个工作线程,CPU利用率低

2、APR+异步Servlet
Apr(Apache可移植运行库),是Apache HTTP服务器的支持库。JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作。Tomcat默认监听指定路径,如果有Apr安装,则自动启用。

3、NIO+异步Servlet
Tomcat8开始默认使用NIO方式,非阻塞读取请求信息,非阻塞处理下一个请求,完全异步。

NIO处理流程:

二、Tomcat参数调优

调优方向:

ConnectionTimeout:根据业务指标及性能来定义
acceptCount:超过Tomcat最大连接数后,堆积在操作系统等待连接的请求数量。Tomcat默认100,linux默认128。
总共可受理连接数 = acceptCount + maxConnections
主要调优最大线程数:maxThreads
理想的线程数量=(1+代码阻塞时间/代码执行时间)*CPU数量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值