tomcat的JVM优化_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > tomcat的JVM优化

tomcat的JVM优化

 2013/9/9 19:07:50  cjnetwork  程序员俱乐部  我要评论(0)
  • 摘要:在catalina.sh启动脚本中增加如下配置:JAVA_OPTS="-server-Xms1024m-Xmx3G-XX:+UseAdaptiveSizePolicy-XX:+UseParallelGC-XX:+UseParallelOldGC-XX:ParallelGCThreads=20-XX:+HeapDumpOnOutOfMemoryError-XX:NewRatio=3-XX:PermSize=128m-XX:MaxPermSize=256m-XX:+PrintGCDetails
  • 标签:Tomcat 优化 JVM
在catalina.sh启动脚本中增加如下配置:

JAVA_OPTS="-server -Xms1024m -Xmx3G -XX:+UseAdaptiveSizePolicy -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=20 -XX:+HeapDumpOnOutOfMemoryError -XX:NewRatio=3 -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintGCApplicationStoppedTime -XX:+PrintHeapAtGC -Xloggc:/usr/local/tomcat1/gc.log -XX:HeapDumpPath=/usr/local/tomcat1/heap.dump"



然后后续可以在注意观察一下。

具体参数的意思:
-server     启动jvm的server模式,该模式启动的时候较慢,但在正式环境中对jvm性能有一定优化作用
-Xms1024m   初始化内存大小
-Xmx3G      最大内存大小
-XX:+UseAdaptiveSizePolicy   使用并行垃圾处理器的时候,优化内存中年轻代和年老代的比例
-XX:+UseParallelGC           年轻代使用并行垃圾收集器
-XX:+UseParallelOldGC        年老代使用并行垃圾收集器
-XX:ParallelGCThreads=20     并行垃圾收集器的线程数量
-XX:+HeapDumpOnOutOfMemoryError    在程序出发OutOfMemoryError的时候,导出堆信息
-XX:NewRatio=3               设置年轻代在整个堆内存的大小(例如目前jvm内存为1G,则年轻大大小为1G * (1 / (1 + 3)) = 250M,年老代为1G - 250M = 700M),因为本web项目中,有一些数据是初始化就加载到内存中,因此可以略微设置较大的年老代内存大小,以减少Full GC。
-XX:PermSize=128m            设置永久代内存大小,该大小会影响到类的加载,因为spring、hibernate等大量使用代理模式,会动态创建很多新的类,因此需要设置该,如果不设置可能导致程序 PermGen Space Error
-XX:MaxPermSize=256m         设置永久代的最大 大小
-XX:+PrintGCDetails          记录GC详细信息
-XX:+PrintGCTimeStamps       记录GC发生的时间,已程序启动多少秒的形式记录
-XX:+PrintGCApplicationConcurrentTime     GC时应用并发执行的时间
-XX:+PrintGCApplicationStoppedTime        GC时,应用程序停止的时间
-XX:+PrintHeapAtGC                        GC前后,输出各个内存区域大小
-Xloggc:/usr/local/tomcat1/gc.log         记录GC日志,设置日志路径
-XX:HeapDumpPath=/usr/local/tomcat1/heap.dump   在程序出发OutOfMemoryError的时候,导出堆信息的路径


发表评论
用户名: 匿名