1.软硬件环境:
应用服务器:64位Windows2003 Server 2cpu 4GB RAM
JDK版本:64位1.5.22
Tomcat版本:6.0.16
2.startup.bat文件中加入设置内存参数:
SET CATALINA_OPTS=-Xms2048m -Xmx2048m -XX:PermSize=128m -XX:MaxPermSize=256m
3.设置线程池及网络连接
<!--线程池-->
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="300" minSpareThreads="100"/>
<!--网络连接-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="9443"
executor="tomcatThreadPool"
compression="on"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css" />
4.参数详细解释:
-Xms[初始化堆内存大小]
-Xmx[可以使用的最大堆内存]
PermSize[永久生成对象如:class对象、方法对象这些可反射(reflective)对象所分配的初始内存,这些内存不包括在Heap(堆内存)区之中]
MaxPermSize[永久生成对象所使用的最大内存]
maxThreads[最大线程数,受限于操作系统支持的网络连接数,一般windows为2000左右,linux为1000左右]
minSpareThreads[最小空闲线程,线程池初始线程数]
maxSpareThreads[最大空闲线程,一旦空闲线程数超出该数字,tomcat会自动关闭不再需要的线程]
connectionTimeout[网络连接超时时间(毫秒),0为永不超时]
compression[压缩传输,能够些许提高服务器与客户端的网络传输效率]
5.以上参数调整信息仅供参考,实际项目中应根据系统的实际运行情况做调整
可以使用tomcat自带的监控工具进行服务器性能监控,但是首先需要在conf/tomcat-users.xml 文件中做如下配置:
<role rolename="manager"/>
<user username="admin" password="admin" roles="manager"/>
然后重新启动tomcat,并访问地址http://IP:PORT/manager/status即可