tomcat7性能调优

来源:互联网 发布:九鼎投资 知乎 编辑:程序博客网 时间:2024/06/18 11:32

参考服务器配置:

Win10家庭版 8G 2核cpu

tomcat-7.0.73

jdk1.7

 

一、JAVA虚拟机(JVM)优化

windows:

修改tomcat-7.0.73\bin\catalina.bat文件,该文件开头是一大段由rem包裹的注释,在注释的最后添加如下内容:

set JAVA_OPTS=-server -Xms2048M -Xmx2048M-Xss256k

-XX:+AggressiveOpts -XX:+UseBiasedLocking-XX:PermSize=256M -XX:MaxPermSize=256M

-XX:+DisableExplicitGC-XX:+UseConcMarkSweepGC -XX:+UseParNewGC

-XX:+CMSParallelRemarkEnabled  -XX:+UseCMSCompactAtFullCollection

-XX:CMSMaxAbortablePrecleanTime=5-XX:+CMSClassUnloadingEnabled

-XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods-XX:+UseCMSInitiatingOccupancyOnly

-XX:CMSInitiatingOccupancyFraction=70-Djava.awt.headless=true

Linux:

修改tomcat-7.0.73\bin\catalina.sh文件,该文件开头是一大段由#包裹的注释,在注释的最后添加如下内容:

export JAVA_OPTS="-server -Xms3072M-Xmx3072M -Xmn512M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking-XX:PermSize=256M -XX:MaxPermSize=256M -XX:+DisableExplicitGC-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSMaxAbortablePrecleanTime=5 -XX:+CMSClassUnloadingEnabled-XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods-XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70-Djava.awt.headless=true"

 

.线程池(ThreadPool)优化

编辑“Tomcat安装目录/conf/server.xml”文件,找到如下内容

<!--

<Executor name="tomcatThreadPool"namePrefix="catalina-exec-"

       maxThreads="150" minSpareThreads="4"/>

-->

取消注释,参数做如下调整

<Executorname="tomcatThreadPool" namePrefix="catalina-exec-"

       maxThreads="1000" minSpareThreads="700"        

       maxIdleTime="600000" />

 

.连接器(Connector)优化

编辑“Tomcat安装目录/conf/server.xml”文件,找到如下内容将其注释掉

找到如下内容,取消注释

<!--

<Connectorexecutor="tomcatThreadPool"

      port="8080" protocol="HTTP/1.1"

      connectionTimeout="20000"

      redirectPort="8443" />

-->

参数做如下调整

<Connector executor="tomcatThreadPool"

       port="8787" protocol="org.apache.coyote.http11.Http11AprProtocol" acceptCount="1100"

       URIEncoding="UTF-8" enableLookups="false"

       connectionTimeout="200000" keepAliveTimeout="15000" maxKeepAliveRequests="1000"

       redirectPort="8443"/>

AJP/1.3协议负责和其他HTTP服务器建立连接,监听的是8009端口,比如tomcatapache或者iis集成时使用这个连接器,此时则需优化8009端口的Connector

<!-- Define an AJP 1.3 Connector onport 8009 -->

    <Connectorport="8009" protocol="AJP/1.3"

           URIEncoding="UTF-8" enableLookups="false"disableUploadTimeout="true"

           connectionTimeout="20000" keepAliveTimeout="15000"maxKeepAliveRequests="1000" compression="on"compressionMinSize="2048"

           redirectPort="8443" />

 

.数据库并发数优化


转载自:http://www.cnblogs.com/dsc65749924/p/6081432.html

0 0