写点什么

Oracle 提议将 G1 作为 Java 9 的默认垃圾收集器

  • 2015-06-16
  • 本文字数:810 字

    阅读完需:约 3 分钟

Oracle 正在考虑将 JEP 248 包含到 Java 9 的 JEP 列表中,即在服务器配置中将 G1 作为默认垃圾收集器。该决定在 Java 社区引发了一些争论,许多人都认为并发标记和扫描(CMS)收集器可能更合适。

如果该决定付诸实施,那么 G1 将取代并行垃圾收集器成为服务器配置的默认选项。正如 Oracle 在内存管理白皮书中描述的那样,并行垃圾收集器的设计初衷是,通过不常发生(但可能时间比较长)的 Stop-The-World(STW)中断最大化应用程序吞吐量。并行垃圾收集器将消耗的总计算时间最小化,长远来看,其破坏性更小,因此可以提供更好的整体性能。该收集器非常适合对响应时间要求不高的应用程序,比如,批处理。

另一方面,正如前 G1 性能负责人 Monica Beckwith先前在 InfoQ 上阐述的那样,Garbage First(G1)的设计初衷是,以更高的计算成本为代价最小化 STW 中断时间。G1 更适合于低延迟应用程序,如 Web 服务器,这也体现了 Stefan Johansson 在 JEP 中所描述的动机:

通常来说,限制 GC 中断时间比最大化吞吐量更重要。对大部分用户而言,与面向吞吐量的收集器相比(如并行垃圾收集器),切换到中断时间短的垃圾收集器(如 G1),可以获得更好的整体体验。

这里出现了争议。HotSpot 因为同样的目的引入了 CMS,而实际上,按照 Oracle 的描述,CMS“设计用于更希望缩短垃圾收集中断时间的应用程序,以及在运行时可以与垃圾收集器共享处理器资源的应用程序”。许多公开的基准测试都表明,在内存占用相对较小的应用程序中,CMS 的性能往往要胜过 G1,这与 Oracle 对 G1 的描述一致,即 G1 适用于堆大小为 6GB 及以上的服务器应用程序。

在最近的一次交流中,性能专家 Kirk Pepperdine 特别指出,谷歌已经向 CMS 贡献了若干改进,但它们从没有出现在 HotSpot 中。他还补充说,虽然长远看 G1 可能是更好的选择,但 Oracle 的设计方案已经剥夺了社区从 CMS 获得更好体验的权力。

查看英文原文: Oracle Proposes G1 as the Default Garbage Collector for Java 9

2015-06-16 22:179574
用户头像

发布了 1008 篇内容, 共 430.7 次阅读, 收获喜欢 346 次。

关注

评论

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

国内首位聋人 Android 软件工程师体验通义灵码,“这真是太棒了”

阿里巴巴云原生

阿里云 云原生 通义灵码

并发编程之同步/异步/回调/任务 工作流程分析图解

肖哥弹架构

Java 并发编程 高并发

共建行业生态,智谱大模型生态合作伙伴联盟成立

技术研究院

恭喜!龙蜥赛项25支队伍获得首届中国研究生操作系统开源创新大赛一二三等奖

OpenAnolis小助手

开源 操作系统 龙蜥社区 龙蜥赛事

对象数组,数据更新刷新ui

flfljh

鸿蒙

深度监听对象数组变化

flfljh

鸿蒙

Flutter+鸿蒙NEXT开发获取系统文件路径

flfljh

鸿蒙

鸿蒙 next 实现应用内的暗黑模式切换

flfljh

鸿蒙

Flutter OS外接纹理适配简介

flfljh

鸿蒙

Flutter和OpenHarmony通信pigeon库的具体接入和用法

flfljh

鸿蒙

Flutter与鸿蒙三方库ohos的适配

flfljh

鸿蒙

ppt目录页怎么做好看?一键切换ppt模板布局的神器来了!

职场工具箱

效率工具 职场 PPT 高效办公 AI生成PPT

cleanmymac有必要买吗?Mac清理软件哪个好用?

阿拉灯神丁

软件包 清理工具 mac系统维护 CleanMyMac X中文版

Flutter与鸿蒙原生交互

flfljh

鸿蒙

“AI”就一起来!开放原子联合龙蜥推出 OS Copilot 学习赛,show 出你的创意

OpenAnolis小助手

Linux AI 操作系统 OS Copilot

龙蜥副理事长张东:加速推进 AI+OS 深度融合,打造最 AI 的服务器操作系统

OpenAnolis小助手

开源 AI 操作系统 龙蜥操作系统大会

基于 EventBridge + DashVector 打造 RAG 全链路动态语义检索能力

阿里巴巴云原生

阿里云 云原生 EventBridge

腾讯云的相关DDoS计费问题概览

网络安全服务

DDoS 带宽 API 接口 腾讯云服务器 DDoS 攻击

国内首位聋人 Android 软件工程师体验通义灵码,“这真是太棒了”

阿里云云效

阿里云 云原生 通义灵码

NocoBase 实战教程 —— 任务管理系统

NocoBase

开源 低代码 教程 无代码

AI 场景下如何确保模型数据安全?Confidential AI 技术最佳实践解读

OpenAnolis小助手

AI 操作系统 机密计算 Confidential AI

MySQL数据迁移到SQLServer数据库

RestCloud

MySQL 数据库 数据传输 ETL SqlServer

【论文速读】| PathSeeker:使用基于强化学习的越狱攻击方法探索大语言模型的安全漏洞

云起无垠

认识鸿蒙Context

龙儿筝

鸿蒙

UBBF 2024,建起超宽带与AI间的博斯普鲁斯大桥

脑极体

Flutter与鸿蒙原生交互二

flfljh

鸿蒙

Hume.ai 升级:自研情感模型集成 Claude 和 Fal;数字嗅觉公司 Osmo 用 AI 实现气味「传送」

声网

快递鸟预约取件API接口代码流程

快递鸟

快递

Oracle提议将G1作为Java 9的默认垃圾收集器_Java_Abraham Marín Pérez_InfoQ精选文章