jvm调优
-server:tomcat以server模式运行时将拥有更大更高的并发处理能力,更快更强捷的JVM垃圾回收机制,可以获得更多的负载与吞吐量
-Xms–Xmx:把Xms与Xmx两个值设成一样是最优的做法
-Xss:设定线程的堆栈大小。一般不宜设置超过1M,否则容易出现out ofmemory
-XX:+AggressiveOpts:启用这个参数,则每当JDK版本升级时,你的JVM都会使用最新加入的优化技术
-XX:+UseBiasedLocking:启用一个优化了的线程锁。使得appserver内对线程处理自动进行最优调配
-XX:PermSize=128M-XX:MaxPermSize=256M:设置非堆内存初始值
-XX:+DisableExplicitGC:在程序代码中不允许调用System.gc()
-XX:+UseParNewGC:对年轻代采用多线程并行回收
-XX:+UseConcMarkSweepGC:使用cms GC回收器
-XX:MaxTenuringThreshold:设置年轻代gc最大年龄
-XX:+CMSParallelRemarkEnabled:在使用UseParNewGC的情况下, 尽量减少mark的时间(暂时不理解)
-XX:+UseCMSCompactAtFullCollection:使用concurrent_gc的情况下,防止memoryfragmention,对live _object进行整理,减少memory碎片
-XX:LargePageSizeInBytes:指定Java heap的分页页面大小
-XX:+UseFastAccessorMethods:get,set方法转成本地代码
-XX:+UseCMSInitiatingOccupancyOnly:指示只有在oldgeneration使用了初始化的比例后concurrent collector启动收集
jvm调优示例
Linux下tomcat启动参数
export JAVA_OPTS="-server -Xms1400M -Xmx1400M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=31 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true "
set JAVA_OPTS=-server -Xms1400M -Xmx1400M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=31 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true
tomcat线程池调优
线程池调优示例
<connector port="8080" protocol="HTTP/1.1" <="" p="" style="word-wrap: break-word;">
URIEncoding="UTF-8" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true" connectionTimeout="20000"
acceptCount="300" maxThreads="300" maxProcessors="1000" minProcessors="5"
useURIValidationHack="false"
compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
redirectPort="8443"
/>