JVM调优总结系列文章及汇总

1、一篇总结: JVM调优总结(这个总结得比较全面)

补充调优原则(未经验证,请勿轻信!!!):

响应时间优先:GC发生(年轻代eden区空间不足时)的时间比较短,频率比较低,也就是减少因GC引起的停顿时间和次数

tomcat运行参数配置:堆内存设置为固定的较大内存,即Xms与Xmx的值相等,防止运行过程中动态申请内存,并且把年轻代Xmn值设置比较大(默认年轻代与老年代的比是1:4),比如可以设置为老年代的2倍,这样可以减少GC发生的频率
垃圾收集器选择方面:年轻代采用ParNew并行多线程收集器,年老代采用CMS并发收集器

配置举例,在catalina.sh中添加如下参数:

JAVA_OPTS='-XX:+PrintGCDetails -Xloggc:gc.log -Xms2048m -Xmx2048m -Xmn1024m -Xss1024k +XX:UseConcurrentMarkSweepGC'

吞吐量优先:频繁发生GC

硬件要求必须是多核CPU,充分利用其并行特性,最大限度利用CPU资源
tomcat运行参数配置:堆内存设置为固定的较大内存,即Xms与Xmx的值相等,防止运行过程中动态申请内存,并且把年轻代Xmn值设置比较大(默认年轻代与老年代的比是1:4),比如可以设置为老年代的2倍,这样可以减少GC发生的频率
垃圾收集器选择方面:年轻代采用Parallel Scavenge并行多线程收集器,年老代采用Parallel Old并行收集器

配置举例,在catalina.sh中添加如下参数:

JAVA_OPTS='-XX:+PrintGCDetails -Xloggc:gc.log -Xms2048m -Xmx2048m -Xmn1024m -Xss1024k +XX:UseParallelGC +XX:UseParallelOldGC'

2、JVM调优总结系列文章:从 JVM调优总结-序 开始,或者 JVM调优总结 总入口。

你可能感兴趣的:(jvm)