JDK 11 将引入低延迟 GC,大幅度缩短 GC 暂停时长

栏目: IT资讯 · 发布时间: 7年前

内容简介:之前我们报导过 JDK 11 进入特性冻结阶段,今天来看看 JEP 333 为了大幅减少 GC 暂停时间的可伸缩低延迟垃圾回收器 ZGC(Scalable Low-Latency Garbage Collector )。 GC 一直以来是 Java 的主要优势之一,但...

之前我们报导过 JDK 11 进入特性冻结阶段,今天来看看 JEP 333 为了大幅减少 GC 暂停时间的可伸缩低延迟垃圾回收器 ZGC(Scalable Low-Latency Garbage Collector )。

JDK 11 将引入低延迟 GC,大幅度缩短 GC 暂停时长

GC 一直以来是 Java 的主要优势之一,但是,当垃圾回收暂停时间过长时,会对应用程序的响应时间产生负面影响,而现代系统中可用的内存量不断增长,用户和应用开发人员希望 JVM 能够以高效的方式充分利用此内存,并且不要有过长的 GC 暂停时间。此次将新增的 ZGC 功能,能够消除或大幅缩短 GC 暂停的时间。

ZGC 有以下几个目标:

  • GC 暂停时间不应超过 10 ms

  • 处理堆的大小范围从相对较小(几百 M)到非常大(几 T)不等

  • 与使用 G1 相比,应用程序吞吐量减少不超过 15%

  • 为未来的 GC 功能和优化利用有色指针(colored pointers)和加载屏障(load barriers)奠定基础

  • 初始支持平台:Linux/x64

ZGC 是一个并发的、单代的、基于区域的、NUMA 感知的压缩收集器,Stop-the-world 阶段仅限于根扫描,因此 GC 暂停时间不会随堆或活动集(live set)的变大而增加。

ZGC 的核心设计原则/选择是将加载屏障与有色对象指针(colored oops)结合使用,这使得 ZGC 能够在 Java 应用程序线程运行时执行并发操作,例如对象重定向。从 Java 线程的角度来看,在 Java 对象中加载引用字段的行为受到加载屏障的影响。除了对象地址之外,colored oops 还包含加载屏障使用的信息,以确定在允许 Java 线程使用指针之前是否需要采取某些操作。例如,对象有可能已经被重定向,那么加载屏障将对此进行检测并采取适当的操作。

JEP 333 还展示了 ZGC 的性能等详细信息,访问 http://openjdk.java.net/jeps/333 查看。


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上所述就是小编给大家介绍的《JDK 11 将引入低延迟 GC,大幅度缩短 GC 暂停时长》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python Machine Learning

Python Machine Learning

Sebastian Raschka / Packt Publishing - ebooks Account / 2015-9 / USD 44.99

About This Book Leverage Python' s most powerful open-source libraries for deep learning, data wrangling, and data visualization Learn effective strategies and best practices to improve and opti......一起来看看 《Python Machine Learning》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具