写点什么

JEP 474:分代式现已成为 Java 中 ZGC 的标准

  • 2024-07-04
    北京
  • 本文字数:805 字

    阅读完需:约 3 分钟

大小:420.02K时长:02:23
JEP 474:分代式现已成为 Java 中 ZGC 的标准

JEP 474(ZGC:默认分代式)以 JDK 23 为目标。该 JEP 建议将 Z 垃圾收集器(ZGC)的默认使用模式从非分代式改为分代式。非分代式将被弃用,并在未来的 JDK 版本中删除。这将彻底降低维护这两种模式的成本,让未来的开发工作可以集中在 JEP 439(分代式 ZGC)上。


JEP 474 中最主要的变化大概就是将 ZGenerational 选项的默认值从 false 改为 true,明确表明了 Java 的内存管理方式发生了战略性变化,尤其是在为 Java 应用程序提供更多“空闲”内存和更低的 GC 开销的基础上优化了垃圾回收。


将默认选项过渡到分代式是希望能借此减少同时支持分代式和非分代式的维护工作,从而允许 OpenJDK 团队会将分代式 ZGC 变得更为高效且有效,以应对外界对现代 Java 应用程序的期望。开发者需注意,非分代模式虽仍可用但已被弃用,因此在通过命令行选项明确启用非分代式时会出现警告。非分代式被弃用的事实意味着它在未来将会被移除。


下面这些常用命令行参数:

  • -XX:+UseZGC:现默认使用分代式 ZGC

  • -XX:+UseZGC -XX:+ZGenerational:同样是使用分代式 ZGC 但对 ZGenerational 标志发出弃用警告。

  • -XX:+UseZGC -XX:-ZGenerational:使用非分代式 ZGC,但对 ZGenerational 标志发出弃用警告,并提示非分代式已被弃用且将被移除。


开发者需对自己的应用程序进行测试,以确保其在新默认设置下的兼容性和性能。如果应用程序与 JVM 有紧密集成,且对垃圾回收非常敏感,那么其性能可能会发生变化。


OpenJDK 的测试承诺中包括确保现有配置和基准在新默认设置下的性能符合预期。对多数应用程序来说风险较低,但部分高性能或低延迟应用程序可能会需要对配置进行调整。


JEP 474 标志着 Java 持续发展过程中的一次关键更新,意图简化并改进垃圾回收的过程,并重点关注分代式技术。此次更新需要开发者重新评估其应用程序的兼容性和性能,但从长远来看,这次 JEP 有望能更高效地管理 Java 应用程序。


原文链接

JEP 474: Generational Mode Now Standard for ZGC in Java

2024-07-04 08:004951

评论

发布
暂无评论
发现更多内容

训练营第二周作业 2

仲夏

极客大学 - 架构师训练营第一期 - 第二周作业

Black Eyed Peter

极客大学架构师训练营

架构师训练营 2 期 - 第二周总结

Geek_no_one

极客大学架构师训练营

架构师训练营第二次作业

月殇

极客大学架构师训练营

架构师训练营第 1 期第二周学习总结

郑凯元

极客大学架构师训练营

极客时间架构1期:第2周框架设计-学习总结

Null

Week 2 命题作业及总结

阿泰

【第二周】课后作业

云龙

极客大学架构师训练营

第二周作业

fmouse

极客大学架构师训练营

第二周总结

fmouse

极客大学架构师训练营

架构师训练营 -week02- 总结

大刘

极客大学架构师训练营

架构师训练营第 1 期第二周课后练习题

郑凯元

极客大学架构师训练营

架构师训练营第二周总结

月殇

极客大学架构师训练营

用户故事信息过多或过少带来的问题

Bruce Talk

敏捷 Agile 用户故事 UserStory

数据结构之堆栈

C语言与CPP编程

c++ 数据结构 堆栈 C语言 数据结构与算法

作业一

泡泡

Serverless 的收益与挑战 | 2020年度状态报告

donghui

Serverless

面向对象设计原则及框架案例

garlic

极客大学架构师训练营

极客时间架构 1 期:第 2 周框架设计 - 命题作业

Null

学习总结1

Wee权

数据结构之线性表

C语言与CPP编程

c++ 数据结构 C语言 线性表 数据结构与算法

第二周作业及学习笔记

橘子皮嚼着不脆

【第二周】框架设计

云龙

极客大学架构师训练营

架构师训练营 1 期第 2 周:框架设计

Wee权

架構師訓練營 week2 作業

ilake

极客大学架构师训练营

C语言与C++学习路线

C语言与CPP编程

c++ 编程语言 C语言

依赖倒置原则和接口隔离原则

garlic

极客大学架构师训练营

作业二

泡泡

华为18级工程师十年之作,整整3625页互联网大厂面试题合集

学习 程序员 面试 架构师技能

第 2 周 框架设计 腐败的代码

Pyr0man1ac

架构师训练营 - 命题作业 - 第二周

徐时良

JEP 474:分代式现已成为 Java 中 ZGC 的标准_编程语言_A N M Bazlur Rahman_InfoQ精选文章