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