写点什么

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:004922

评论

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

详解网络知识:iptables规则

华为云开发者联盟

开发 华为云 华为云开发者联盟 云容器网络

Programming Abstractions in C阅读笔记:p283-p292

codists

The Sandbox NFT 概览与数据分析

Footprint Analytics

区块链游戏 NFT 链游

低代码开发与网络信息安全:构建高效防护体系

不在线第一只蜗牛

软件开发 低代码 网络 低代码开发

ETL数据集成工具DataX、Kettle、ETLCloud特点对比

谷云科技RestCloud

kettle ETL DataX 集成工具 ETLCloud

Sora给中国AI带来的真实变化

脑极体

AI

PolarDB-X的XPlan索引选择

阿里云数据库开源

数据库 阿里云 索引 polarDB PolarDB-X

如何将“龙”插入到富文本编辑器中?

OpenTiny社区

开源 前端 低代码 组件库

计算schemas/AMs 大小的函数及 \dn++ 和 \dA++

孤傲小二~阿沐

深入理解 Java 方法重载与递归应用

小万哥

Java 程序人生 编程语言 软件工程 后端开发

当我们在谈安全默认时我们在谈什么

I

安全架构师 安全设计 安全架构

云原生明星创业公司 Weaveworks 倒闭了,GitOps 该何去何从?

极狐GitLab

图像处理-Java-字深字浅

alexgaoyh

Java 图像处理 边缘检测 字深 字浅

区块链游戏解说: DeFi Kingdoms

Footprint Analytics

defi 区块链游戏 链游

软件测试学习笔记丨性能统计工具

测试人

软件测试 性能测试 自动化测试 测试开发

一线管理者手中有哪些牌

芃篙君

管理

GaussDB(for MySQL) Serverless全面商用:无感弹性,极致性价比

华为云开发者联盟

数据库 华为云 华为云开发者联盟 华为云Serverless 华为云GaussDB(for MySQL)

业务开发自由之路:如何打破框架束缚,实现真正的框架中立性

canonical

低代码 架构设计 Nop平台 框架中立性

扫码即可快速协作:草料二维码底部协作面板功能详解

草料二维码

[转]Arthas 3.5.1发布:神级特性!内存搜索对象

虚实的星空

转载

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