下面给出的是tomcat的优化建议,如果不同意见请留言。
上配置:
tomcat jmx配置访问:
修改catalina.sh
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostnqme=192.168.85.88" 设置jvm堆内存大小:
修改catalina.sh
下面是1G内存环境下的jvm java的参数设置:
JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true " JAVA_OPTS="-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX: NewSize=192m -XX:MaxNewSize=384m" CATALINA_OPTS="-server -Xms768m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:NewSize=192m -XX:MaxNewSize=384m"
-Xms40m //初始内存
-Xmx256m //最大内存
-Xmn16m //最小内存
-XX:PermSize=128M //非堆内存
-XX:MaxPermSize=256M tomcat线程池配置:
修改server.xml
相对来说下面给出的比较全。 <Connector port="8080" protocol="HTTP/1.1"
URIEncoding="UTF-8"
enableLookups="false"
disableUploadTimeout="true"
connectionTimeout="20000"
redirectPort="8443"
minProcessors="5"
maxProcessors="1000"
maxThreads="600"
minSpareThreads="100"
maxSpareThreads="500"
acceptCount="700"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
/>
maxThreads //最大线程数
minSpareThreads //初始化时创建的线程数。
maxSpareThreads //一旦创建的线程超过这个值,tomcat就会关闭不再需要的socket线程。
acceptCount //指定当所有可以使用的处理请求的县城都被使用时,
可以放到处理队列中的请求数,超过这个数的请求将不予处理。 tomcat 关闭DNS查询
修改server.xml
enableLookups="false" 设置tomcat压缩,
修改server.xml
compression="on"
compressionMinSize=""
noCompressionUserAgents="gozilla,
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"