- 大对象需要在老年代进行分配,通过参数-XX:PetenureSizeThreshold 单位B 。如果在年轻代分配大对象,则很快年轻代就会满,一些年轻代对象提早进入了老年代,进而导致老年代拥挤,触发FullGc
- 设置年轻代的存活年龄阀值,通过参数XX:MaxTenuringThreshold 可以让年轻代对象在 年轻代就进行回收,避免进入老年代导致频繁的FullGc
- -Xms -Xmx 最好设置成一样的,这样就不会频繁的压缩或者扩充堆空间
- 合理设置eden大小,进而大部分对象在年轻代就进行了回收,而不会进入老年代,减少FullGc的次数
- 注重吞吐量的系统,需要设置-xx:+UseParallelGC 设置关注吞吐量的GC
-XX:+UseParallelOldGC
:设置老年代使用并行垃圾回收收集器 - 尝试使用大的内存分页:使用大的内存分页增加CPU的内存寻址能力,从而系统的性能。
-XX:+LargePageSizeInBytes
设置内存页的大小 - -XX:+UseConcMarkSweepGC 用CMS垃圾收集器,降低系统的停顿时间
JVM调优的小优化
最新推荐文章于 2023-09-21 07:45:00 发布