JVM参数之UseAdaptiveSizePolicy

1、AdaptiveSizePolicy(自适应大小策略) :

      JDK 1.8 默认使用 UseParallelGC 垃圾回收器,该垃圾回收器默认启动了 AdaptiveSizePolicy,会根据GC的情况自动计算计算 Eden、From 和 To 区的大小;

2、配置:

       开启:-XX:+UseAdaptiveSizePolicy
       关闭:-XX:-UseAdaptiveSizePolicy

3、注意事项:

       3.1、在 JDK 1.8 中,如果使用 CMS,无论 UseAdaptiveSizePolicy 如何设置,都会将 UseAdaptiveSizePolicy 设置为 false;不过不同版本的JDK存在差异;
       3.2、UseAdaptiveSizePolicy不要和SurvivorRatio参数显示设置搭配使用,一起使用会导致参数失效;
       3.3、由于AdaptiveSizePolicy会动态调整 Eden、Survivor 的大小,有些情况存在Survivor 被自动调为很小,比如十几MB甚至几MB的可能,这个时候YGC回收掉 Eden区后,还存活的对象进入Survivor 装不下,就会直接晋升到老年代,导致老年代占用空间逐渐增加,从而触发FULL GC,如果一次FULL GC的耗时很长(比如到达几百毫秒),那么在要求高响应的系统就是不可取的。

 

附:对于面向外部的大流量、低延迟系统,不建议启用此参数,建议关闭该参数。

posted @ 2020-09-17 20:54  晓等  阅读(1787)  评论(0编辑  收藏  举报