1.Executor配置(线程池):
说明:
name:自定义的Executor名称
maxThreads:最大线程数(默认200)
minSpareThreads:最小空闲线程数(默认25)
className:Executor实现类,默认为StandardThreadExecutor
threadPriority:线程优先级,默认5
daemon:true为守护线程
namePrefix:线程名前缀
maxQueueSize:等待的任务数量,默认无穷大
prestartminSpareThreads:true在启动线程池时启动minSpareThreads个线程,默认false
threadRenewalDelay:默认1000毫秒
例:
<Executor name="自定义Executor名" ... maxThreads="200" minSpareThreads="25"/>
2.Connector配置(请求/响应):
说明:
maxThreads:最大线程数(默认200)
minSpareThreads:最小空闲线程数(默认10)
connectionTimeout:连接超时时间(默认60秒),0永不超时,单位毫米
acceptCount:队列长度(默认100),一般与maxThreads值一致
maxConnections:最大连接数,超过后在acceptCount范围内进入排队等候
enableLookups:true启用DNS查找(默认false,生产环境false)
compression:GZIP压缩,值为:off关闭 | on压缩文本数据 | force压缩所有数据 | 数值(数据容量达到时开启压缩)
port:端口
protocol:协议名,值为HTTP/1.1(默认,自动) | Http11Protocol类全名(BIO性能差) | Http11NioProtocol类全名(NIO) | Http11Nio2Protocol(NIO2) | Http11AprProtocol(APR)
disableUploadTimeout:(默认)true时使用connectionTimeout,false时使用connectionUploadTimeout
connectionUploadTimeout:上传超时时间,disableUploadTimeout=false才生效
redirectPort:https转发端口
executor:指定Executor名称,为自定义名称,不设此属性时使用内部私有Executor
例:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" acceptCount="200" redirectPort="8443" executor="自定义Executor名"/>
3.Host配置:
说明:
autoDeploy:true时定期自动部署appBase/xmlBase目录下的应用
例:
<Host name="localhost" autoDeploy="true">
4.Session配置:
<session-config>
<session-timeout>30</session-timeout> <!--session过期时间,单位分-->
</session-config>
5.SpringBoot项目配置Tomcat(application.yml中):
server:
connection-timeout: 20s #连接超时时间(默认60秒),0永不超时,单位毫米
tomcat:
accept-count: 100 #队列长度(默认100),一般与maxThreads值一致
max-connectioins: 10000 #最大连接数,超过后在acceptCount范围内进入排队等候
max-threads: 200 #最大线程数(默认200)
min-spare-threads: 10 #最小空闲线程数(默认10)
compression:
enabled: false #是否启用GZIP,默认false
min-response-size: 2KB #执行GZIP最小响应字节数,默认2KB
mime-type: "application/json" #执行GZIP的格式
servlet:
session:
timeout: 30m #session过期时间,单位分