您现在的位置是:亿华云 > 系统运维
全面的tomcat优化参数总结,都在这里了
亿华云2025-10-02 19:25:47【系统运维】0人已围观
简介概述最近准备对xx系统做一些优化工作,这里先从tomcat参数方面入手,后面再针对mysql和具体sql去做一下优化。下面基于之前介绍的tomcat参数优化来做整体介绍。1、目前tomcat配置可以看
概述
最近准备对xx系统做一些优化工作,全面这里先从tomcat参数方面入手,化参后面再针对mysql和具体sql去做一下优化。数总下面基于之前介绍的结都tomcat参数优化来做整体介绍。
1、全面目前tomcat配置
可以看到目前tomcat是化参基本没做优化的,基本为默认参数。数总


2、结都优化后的全面配置
2.1、注释AJP协议
这个影响倒不是化参很大。

2.2、数总设置JVM
这里要根据服务器内存,结都然后自己规划下就行。全面

2.3、化参核心参数
这里的数总参数比较重要,影响会比较大。

3、启动日志
可以看到通讯模式改为了NIO。

参数说明
1、内存--设置JVM参数
JAVA_OPTS="-XX:PermSize=256M -XX:MaxPermSize=512m -Xms2048m -Xmx4096m -Duser.timezone=Asia/Shanghai"说明:
-Xms:设置JVM初始内存大小(默认是物理内存的1/64) -Xmx:设置JVM可以使用的最大内存(默认是物理内存的云南idc服务商1/4,建议:物理内存80%) -XX:PermSize :为JVM启动时Perm的内存大小 -XX:MaxPermSize :为最大可占用的Perm内存大小(默认为32M)2、禁用AJP协议
注释 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />ajp协议是tomcat为了动静资源处理分离时,通过该协议可以将css、js等静态资源请求转发到Apache的http服务器处理,提高并发量。但是在优化tomcat时,没有用到Apache服务器,则需要将其禁用。
3、将BIO通讯模式修改为NIO通讯模式
<Connector connectionTimeout="20000" port="8066" protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8448"/>其中,原来的protocol="HTTP/1.1"表示遵循http1.1协议,同时,也是一个最原始的未经优化的通信协议,修改之后的 protocol="org.apache.coyote.http11.Http11NioProtocol" ,表示以 NIO模式启动。
4、并发--启用外部连接池
maxThreads:tomcat起动的最大线程数,服务器租用即同时处理的任务个数,默认值为150
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="400" minSpareThreads="4"/> <Connector connectionTimeout="20000" port="8066" executor="tomcatThreadPool" protocol="org.apache.coyote.http11.Http11NioProtocol"/>5、配置缓存
<Connector port="xxx" compression="on" compressionMinSize="2048" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" connectionTimeout="20000" disableUploadTimeout="true" />说明:
compression 打开压缩功能 compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB compressableMimeType 压缩类型 connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间6、优化连接器--最终模板
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="400" minSpareThreads="4"/> <Connector port="8080" executor="tomcatThreadPool" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" enableLookups="false" maxPostSize="10485760" URIEncoding="UTF-8" useBodyEncodingForURI="true" maxConnections="1000" acceptCount="1000" minProcessors="100" maxProcessors="1000" disableUploadTimeout="true" compression="on" compressionMinSize="2048" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" SSLEnabled="false" />说明:
acceptCount:允许的最大连接数,应大于等于 maxProcessors ,默认值为 100 enableLookups:是否反查域名,取值为: true 或 false 。为了提高处理能力,应设置为 false connectionTimeout:网络连接超时,单位:毫秒。设置为 0 表示永不超时,这样设置有隐患的。通常可设置为20000毫秒。 disableUploadTimeOut:允许Servlet容器,正在执行使用一个较长的连接超时值,以使Servlet有较长的时间来完成它的执行,默认值为false maxPostSize:指定POST方式请求的最大量,网站模板没有指定默认为2097152很赞哦!(4446)
上一篇: 全面了解数据中心的能源消耗!