Tomcat調優的幾個方面


1. 提高JVM棧內存Increase JVM heap memory

配置TOmcat的配置文件下的catalinatomcat server folder/bin

  • Windows:catalina.bat
  • Linux:catalina.sh

JVM通常不去調用垃圾回收器,所以服務器可以更多關注處理web請求,並要求盡快完成。 下面,給出這個文件的配置信息,

JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC

2. 解決JRE內存泄露

最新的tomcat版本6.0.26及以上就可以解決JRE內存泄露,因為它包含了一個監聽器來處理JRE和PermGen的內存泄漏。tomcat server folder/conf/server.xml使用的監聽器是

<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />

3. 線程池設置

tomcat server folder/conf/server.xml

  • 方法一:直接配置在Connector

      <Connector port="8080" address="localhost" maxThreads="250" maxHttpHeaderSize="8192" emptySessionPath="true" protocol="HTTP/1.1" enableLookups="false" redirectPort="8181" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />
  • 方法二:配置Executor(推薦配置)

      <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="250" minSpareThreads="20"/> <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

4. gzip壓縮

tomcat server folder/conf/server.xml

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8181" compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" compressableMimeType="text/html,text/xml,text/javascript,application/x-javascript,application/javascript,text/css,text/plain" />

5. protocol:NIO

tomcat server folder/conf/server.xml

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" redirectPort="8181 "compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" compressableMimeType="text/html,text/xml,text/javascript,application/x-javascript,application/javascript,text/css,text/plain"/>

6. Tomcat原生庫(APR)-需要Lib

Tomcat的原生庫基於Apache可移植運行時(Apache Portable Runtime簡稱APR),給程序員提供了超強的擴展性和性能,在產品運作中幫助融合原生的服務器技術以展現最佳的性能


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM