50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Sun 仅通过付费支持合同提供最新 G1 垃圾收集器?

  • 2009-06-02
  • 本文字数:1288 字

    阅读完需:约 4 分钟

Sun 的 Garbage First 垃圾收集器(G1)已经随Java Update 1.6.0_14 (6u14) 发布。虽然开发社区对这款短暂停、服务器风格的收集器盼望已久,但是目前Sun 仅允许付费用户用于生产环境。

InfoQ 之前已经报道过 G1 的技术细节:

Sun 公司的 Garbage First 垃圾收集器是一款短暂停的垃圾收集器,计划用来取代 Hotspot JVM 中的 CMS。它是一种服务器风格的垃圾收集器,主要针对多处理器大内存的机器。CMS 与 G1 有两大区别。第一,G1 是一款压缩型的收集器。压缩,也就是把 活动的对象从原先的存储地址移到堆的一端,那么堆的另外一端就会有整块的空闲内存,这对于长时间运行的应用系统来说非常重要,因为时间一长,这些系统不可 避免都会产生内存碎片。G1 通过有效的压缩完全避免了对细微空闲内存空间的分配,这不仅大大简化了收集器,而且还消除了潜在的碎片问题。除压缩以外,G1 的垃圾收集停顿也比 CMS 容易估计,它允许用户自定义所希望的停顿参数。这种确定性也让 G1 具有某种实时级别的垃圾收集特征,但这还不是“硬实时”,因为 底层操作系统的某些调度因素无法保证上述的停顿机制。尽管如此,与 Java 实时产品相比,G1 对开发人员来说相对更容易使用,因为已有的程序不需要修改代 码就能利用 G1 改善自身性能。G1 采用了很多有意思的技术,它根据全局的标志信息和其度量,按各个区域的 GC 效率给区域排列垃圾收集的优先级。

G1 在 update 6u14 中发布:

Garbage First,也就是 G1,是一款短暂停、服务器风格的收集器。G1 相比并发标记—收集器(CMS)的主要优势在于增量压缩、更好的预测和易用性。

…但是其发行说明中提到你必须与 Sun 达成支持合同才可以把 G1 用于生产环境中:

虽然 G1 已经发布,请注意对 G1 的生产环境使用必须购买 Java 支持合同才能获得授权。G1 通过 Sun 的 Java Platform Standard Edition for Business program 获得支持。

很多人认为这标志着 Sun 的政策转变,并且与 Oracle 的收购有关:

Java 的收费开始了。Sun 今天发布了 Java 1.6.0_14 JDK 和 JRE,其中包含了一个很酷的新垃圾收集器 G1。不过有一点值得注意。虽然 G1 包含在该发布中,发行说明提到“虽然 G1 已经发布,请注意对 G1 的 生产环境使用必须购买 Java 支持合同才能获得授权。”由此看出,Oracle 的影响已经开始发挥作用。当所有的好东西都进入 Java SE 的商业版本,OpenJDK 是否注定落到被阉割的境地?

其他人则认为这一条款与 G1 的实验性本质有关,在未来版本中会被删除:

当我第一次看到这个说明时,我首先想到的是它其实是想说“现在的代码不适合生产环境,但是不管怎样我们还是发布了,缺省情况下不启用,你的应用表现可能与你的期望不同,如果你准备在生产环境中启用然后发现问题的话,除非你签署了支持合同,否则我们是不会协助你的。”

我怀疑可能在 u14 之后的更新或者 JDK7 发布时,这个支持要求可能会消失。

考虑到 G1 是 JDK/OpenJDK7 预告的功能之一,Sun 似乎不太可能只提供给付费用户。

你认为 Sun 应用利用下一代 Java/JVM 的某些功能赚钱吗?这会对 Java 带来什么影响?

查看英文原文: Is Sun offering the new G1 Garbage Collector Only with a Paid Support Contract?

2009-06-02 01:362567
用户头像

发布了 501 篇内容, 共 279.0 次阅读, 收获喜欢 64 次。

关注

评论

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

Week3 - 练习

evildracula

架构

Fedora32安装和卸载openjdk11

ilovealt

Linux Openjdk

架构师训练营 1 期第 7 周:性能优化(一)- 总结

piercebn

极客大学架构师训练营

第15周作业

Vincent

极客时间 极客大学

读完Java名著《Effective Java》: 我整理了这50条技巧

Java架构之路

Java 程序员 架构 面试 编程语言

囚徒困境:跳脱思维的牢笼

多元思维力-晓陶

认知 思维 多元思维力

极客时间架构师培训 1 期 - 第 7 周作业

Kaven

架构师训练营第七周

我是谁

极客大学架构师训练营

第三周 单例

Geek_9527

使用K3S创建本地开发集群

东风微鸣

Kubernetes k3s Traefik

GitHub上最火的SpringCloud微服务商城系统项目,附全套教程

Java架构之路

Java 程序员 架构 面试 编程语言

「架构师训练营」第 3周作业

小黄鱼

极客大学架构师训练营

第二章课后习题

博博

Netty源码解析 -- PoolChunk实现原理

binecy

源码 Netty 内存布局

第7周总结

alpha

极客大学架构师训练营

架构师入门学习感悟三

笑春风

Spring+多线程+集合+MVC+数据结构算法 +MyBatis源码学习笔记分享

Java架构之路

Java 程序员 架构 面试 编程语言

工作1-3年的程序员,应该具备怎么样的技术能力?该如何提升?

Java架构师迁哥

Java键值对排序

ilovealt

Java

第七周作业

alpha

极客大学架构师训练营

架构师训练营第三周学习笔记

邢永春

第二章学习笔记

博博

全链路压测在信用卡行业的实践

DrawDe朱

全链路压测

Week3 - 代码重构

evildracula

学习 架构

CAP原理及作业

橘子皮嚼着不脆

单例模式样例

jorden wang

架构师训练营第三周作业

邢永春

极客时间架构师训练营 1 期 - 第 7周总结

Kaven

Spring Data Jpa deleteAll大概了解

ilovealt

Java jpa

Java核心基础——反射

老农小江

Java 基础

一站式接口测试服务体系建设

DrawDe朱

接口自动化 自动化测试平台

Sun仅通过付费支持合同提供最新G1垃圾收集器?_Java_Dio Synodinos_InfoQ精选文章