JVM调优面试

1、JVM调优主要涉及两方面:堆大小的设置,垃圾回收期的选择,首先要对自己对系统有个定位,是吞吐量优先型系统还是响应优先型系统。

    吞吐量优先型系统,一般建议设置一个大的年轻代和一个小的老年代,这样可以尽可能回收掉大部分短期对象,而年老代尽存放长期存活对象。这种系统建议使用吞吐量优先的并行收集器(UseParallelGC),-XX:+UseAdaptiveSizePolicy(大小自适应策略):设置此选项后,并行收集器会自动选择年轻代区大小和相应的Survivor区比例,以达到目标系统规定的最低相应时间或者收集频率等,此值建议使用并行收集器时,一直打开。-XX:MaxGCPauseMillis=100:设置每次年轻代垃圾回收的最长时间,如果无法满足此时间,JVM会自动调整年轻代大小,以满足此值。

    响应优先型系统,响应时间优先的应用:尽可能设大,直到接近系统的最低响应时间限制(根据实际情况选择)。在此种情况下,年轻代收集发生的频率也是最小的。同时,减少到达年老代的对象。建议使用(UseConcMarkSweepGC),新生代采用并行收集器(ParNew),老年代采用并发收集器(CMS)

由于CMS采用的是标记清理算法,因此会有碎片,建议设置以下参数

CMSFullGCsBeforeCompaction:由于并发收集器不对内存空间进行压缩、整理,所以运行一段时间以后会产生“碎片”,使得运行效率降低。此值设置运行多少次GC以后对内存空间进行压缩、整理。
-XX:+UseCMSCompactAtFullC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值