首先要明确以下几个东西:
(1)评价GC性能的指标有哪些?
一个是吞吐量,另一个是最大停顿时间。什么叫吞吐量?GC里面的吞吐量说的是cpu花在垃圾回收的时间和花在应用程序上的时间的占比。什么叫最大停顿时间?就是中断应用程序来做垃圾回收的应用停顿时间。
(2)常用的GC有哪些?
GC分为3大类:serial 、 parallel、concurrent(CMS、G1)。parallel和concurrent是什么意思?parallel又叫吞吐量优先的收集器,它的意思是说:多个GC线程并行,但是GC线程与应用线程不是并行。concurrent又叫响应时间优先的收集器,它是说GC线程可以和应用线程并行执行。CMS和G1都是concurrent的垃圾收集器,JDK9里面G1已经是默认的垃圾收集器了。
(3)不同GC的日志格式是啥样的?
每一种GC的日志格式都是不一样的。
(4)如何做GC调优?
一般就是通过日志分析工具,分析GC的日志,来得出前面说的2个性能指标的数值,然后通过日志查找出现FullGC的原因,主要的原则就是消灭FullGC,减少MinorGC,最终的目标就是在保证最大停顿时间的前提之下,最大化吞吐量。
欢迎看这个视频:《Java生产环境下性能监控与调优详解》
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦