java中的g1_G1GC 概念与性能调优

本文介绍了Java中的G1 Garbage Collector,强调其并发、STW特性以及关注暂停时间目标。G1将堆划分为大小相等的region,包括E(eden)、S(survivor)、O(old)和H(humongous)。文章讨论了Java 9后的GC日志参数,并详细解析了G1的Young Only、Mixed GC和Full GC三个阶段的工作原理,以及如何通过调整参数进行性能调优。最后提到了其他新型垃圾回收器如Epsilon、ZGC和Shenandoah。
摘要由CSDN通过智能技术生成

本文来自OPPO互联网技术团队,转载请注名作者。同时欢迎关注我们的公众号:OPPO_tech,与你分享OPPO前沿互联网技术及活动。本文不讨论 G1 底层数据结构与算法,从 G1 GC 行为上做简要介绍 G1 的过程

Garbage-First Garbage Collector 从官网的描述来看:

G1 is a generational, incremental, parallel, mostly concurrent, stop-the-world, and evacuating garbage collector which monitors pause-time goals in each of the stop-the-world pauses. Similar to other collectors, G1 splits the heap into (virtual) young and old generations. Space-reclamation efforts concentrate on the young generation where it is most efficient to do so, with occasional space-reclamation in the old generation.

从介绍可以加粗几个重点分代

并发

STW

在每个STW阶段关注暂停时间目标

回收主要集中在最有效的young generation, old generation则没这么频繁

在G1中,为了提升吞吐量,有一些操作永远是(STW) stop-the-world 的。其他的一些要长期的,如全局标记这种要全堆进行的操作与应用程序并发进行。为了让空间回收的 STW 尽可能减少,G1并行的分步的递增进行空间回收。G1通过追踪此前应用行为和垃圾回收停顿的信息来构建一个与开销有关的模型(Pause Predi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值