1、调整线程数
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="1900" minSpareThreads="250" maxSpareThreads="750"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"
URIEncoding="utf-8" useBodyEncodingForURI="true"
compression="off"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,application/json"/>
建议使用压测工具,如jmeter边压边查看cpu、内存情况,调整线程数,一般调优主要个改如下参数:
maxThreads="1900" minSpareThreads="250" maxSpareThreads="750" acceptCount="100"
属性 | 描述 |
maxThreads |
Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。 |
acceptCount |
指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。 |
connnectionTimeout |
网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。 |
minSpareThreads |
Tomcat初始化时创建的线程数。 |
maxSpareThreads |
一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。 |
enableLookups | 是否反查域名,默认值为true。为了提高处理能力,应设置为false |
maxKeepAliveRequests | 保持请求数量,默认值100。 |
bufferSize | 输入流缓冲大小,默认值2048 bytes |
compression | 压缩传输,取值on/off/force,默认值off |
2、调整运行内存
- 服务形式安装(略)
- win+r,regedit打开注册表,HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\apache-tomcat-9-1\Parameters\Java
- JvmMs切换10进制,输入1024表示最小初始化内存为1G
- JvmMx切换10进制,输入2048表示最大内存为2G