jvm 参数
缓存预热
1 | -XX:+AlwaysPreTouch |
Consider using this when you have a big heap or are using large page. It pretouchs and set zero all the pages you have allocated during the initialization of your application. Normally a page is touched when it is used, but in the cases where you have big heap or big page size, this may increase your startup time, but is probably better than doing the pretouch in run time with performance impact.
1 | -XX:InitialTenuringThreshold |
通过 -XX:InitialTenuringThreshold 和 -XX:MaxTenuringThreshold 可以设定老年代阀值的初始值和最大值,这个参数用于控制对象能经历多少次Minor GC才晋升到旧生代,默认值是15,在设置-XX:-UseAdaptiveSizePolicy后,则以MaxTenuringThrehsold为准,并且不会重新计算,会是恒定值。另外,可以通过参数 -XX:TargetSurvivorRatio 设定幸存区的目标使用率.例如 ,
-XX:MaxTenuringThreshold=10 -XX:TargetSurvivorRatio=90 设定老年代阀值的上限为10,幸存区空间目标使用率为90%。
如希望跟踪每次minor GC后新的存活周期的阈值,可在启动参数上增加:-XX:+PrintTenuringDistribution,输出的信息中的.
1 | -XX:TargetSurvivorRatio=50 |
默认值:50 实际使用的survivor空间大小占比。默认是47%,最高90%。
1 | -XX:+UseAdaptiveSizePolicy |
自动选择年轻代区大小和相应的Survivor区比例。设置此选项后,并行收集器会自动选择年轻代区大小和相应的Survivor区比例,以达到目标系统规定的最低相应时间或者收集频率等,此值建议使用并行收集器时,一直打开.