为了账号安全,请及时绑定邮箱和手机立即绑定

Java中如何做GC调优?

标签:
Java

首先要明确以下几个东西:
(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人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
768
获赞与收藏
234

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消