tomcat性能优化

一、设置catalina.bat中的JAVA_OPTS参数,在D:apache-tomcat-8085incatalina.bat文件里
参数说明:
1.Xms:
TOMCAT中JVM内存最小设置参数,建议修改为1024M;

2.Xmx:
TOMCAT中JVM内存最大设置参数,建议修改为1024M;
注意:Xms、Xmx最好配置一样。

3.-XX:PermSize=256M
设置永久域(非堆内存)的初始值,默认是物理内存的1/64, 建议不要超过256M;

4.-XX:MaxPermSize=512M
设置永久域的最大值,默认是物理内存的1/4,建议修改为512M;

window设置如下:

rem ----- Execute The Requested Command ---------------------------------------

echo Using CATALINA_BASE:   "%CATALINA_BASE%"  
set  JAVA_OPTS=%JAVA_OPTS% -server -Xms1024m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512M #测试发现,8g内存4核cpu该设置最优,不同环境参数设置不一样
     
echo Using CATALINA_HOME:   "%CATALINA_HOME%"
echo Using CATALINA_TMPDIR: "%CATALINA_TMPDIR%"
if ""%1"" == ""debug"" goto use_jdk

 linux设置如下:

# ----- Execute The Requested Command -----------------------------------------
JAVA_OPTS="$JAVA_OPTS -server -Xms1024m -Xmx1024m -XX:PermSize=512M -XX:MaxPermSize=1024M"

二、设置server.xml中的Connector参数
打开%CATALINA_HOME%confserver.xml文件,找到以下内容:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>

修改为以下内容:

<Connector port="8085" 
           protocol="org.apache.coyote.http11.Http11NioProtocol" <!-- 使用nio模式,提高性能 -->
           acceptorThreadCount="2" <!-- 双核启用 -->
           connectionTimeout="30000" <!-- 连接超时30秒 -->
           URIEncoding="utf-8" <!-- 双核启用 -->
           enableLookups="false" <!-- 关闭ip反查,提高性能 -->
           maxThreads="1000" <!-- 最多线程1000个 -->
           acceptCount="1000" <!-- 线程满了,请求队列数量1000个 -->
           maxConnections="10000" <!-- 最多请求量 -->
           minSpareThreads="200" <!-- Tomcat初始化时创建的线程数。此处我们设置为200 -->
           maxSpareThreads="300" <!-- 一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。此处的值我们设置为300。 -->
           redirectPort="8443"  
           bufferSize="3072" <!--Connector创建的输入流的大小,默认值是2048 bytes,提高这个值可以提升性能,增加内存消耗。 --> 
           />

Tomcat中的Connector配置

原文地址:https://www.cnblogs.com/linjiqin/p/6844261.html