InfoQ

新闻

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

作者 Dionysios G. Synodinos 译者 崔康 发布于 2009年6月2日 上午1时36分

社区
Java
主题
性能和可伸缩性
标签
垃圾回收,
JVM,
Sun Microsystems

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年6月2日 上午3时11分
Re: 自毁长城 发表人 Neil Ding 发表于 2009年6月2日 上午8时32分
收购后的第一场雪 发表人 Joe Huang 发表于 2009年6月2日 上午4时8分
是注定有今天? 发表人 衡锋 阳 发表于 2009年6月2日 上午10时13分
Re: 是注定有今天? 发表人 qiao nan 发表于 2009年6月2日 上午10时43分
不错 发表人 William Shen 发表于 2009年6月2日 下午12时32分
Re: 不错 发表人 free builder 发表于 2009年6月2日 下午8时44分
Re: 不错 发表人 William Shen 发表于 2009年6月3日 上午2时15分
对开源界的影响 发表人 Qiang Li 发表于 2009年6月2日 下午7时44分
Re: 对开源界的影响 发表人 Bo Meng 发表于 2009年6月2日 下午9时12分
Re: 对开源界的影响 发表人 William Shen 发表于 2009年6月3日 上午2时16分
生产环境和各位的OSS理想有什么关系,不解 发表人 wang haidong 发表于 2009年6月2日 下午8时55分
  1. 返回顶部

    自毁长城

    2009年6月2日 上午3时11分 发表人 海平 黄

    开源开到最后还是灭火了!

  2. 返回顶部

    收购后的第一场雪

    2009年6月2日 上午4时8分 发表人 Joe Huang

    java 马上变得满身铜臭

  3. 返回顶部

    Re: 自毁长城

    2009年6月2日 上午8时32分 发表人 Neil Ding

    还是.Net比较可爱,至少微软不会为.Net垃圾回收器收钱

  4. 返回顶部

    是注定有今天?

    2009年6月2日 上午10时13分 发表人 衡锋 阳

    java的垃圾回收机制一直饱受质疑。现在推出一个收费的垃圾回收,真是看到了“市场”,java这样做是不是很不厚道?

  5. 返回顶部

    Re: 是注定有今天?

    2009年6月2日 上午10时43分 发表人 qiao nan

    不喜欢oracle,转Python吧,毕竟是google在支持,如果哪天google也变得像oracle这样子,那就回家自己写门语言自己用...

  6. 返回顶部

    不错

    2009年6月2日 下午12时32分 发表人 William Shen

    只是在“生产环境下”需要购买商业License,大家这么愤慨,莫非都是甲方?

  7. 返回顶部

    对开源界的影响

    2009年6月2日 下午7时44分 发表人 Qiang Li

    对开源界现实的影响不大,主要是潜在影响很坏。如果Sun如果在收费策略下继续这么干,Java社区必然会跟Sun分道扬镳。

  8. 返回顶部

    Re: 不错

    2009年6月2日 下午8时44分 发表人 free builder

    乙方也不乐意阿,会侵蚀甲方的预算

  9. 返回顶部

    生产环境和各位的OSS理想有什么关系,不解

    2009年6月2日 下午8时55分 发表人 wang haidong

    Sun那么多Java工程师都喝西北风了,java就能健康成长了?搞不懂一听到收费这个词,就义愤填膺的理由是什么?莫非大家都是出钱的主?反过来说,一般的大企业你没有商业支持,谁用啊?

  10. 返回顶部

    Re: 对开源界的影响

    2009年6月2日 下午9时12分 发表人 Bo Meng

    sun已经不是原来的SUN了,是oracle的sun。

  11. 返回顶部

    Re: 不错

    2009年6月3日 上午2时15分 发表人 William Shen

    侵蚀啥啊侵蚀,Oracle贵不?Weblogic贵不?还不是照样吃香喝辣?Windows收费了那么多年,也没看见谁说微软自毁长城。
    很多做Java的筒子,连Sun JVM提供几种垃圾回收器都不知道呢。一门心思赚人钱的穷苦大众,看到别人想赚地主的钱,就破口大骂,搞笑吗?有点儿商业头脑吧,都不是小孩子了。

  12. 返回顶部

    Re: 对开源界的影响

    2009年6月3日 上午2时16分 发表人 William Shen

    sun已经不是原来的SUN了,是oracle的sun。
    ---Sun本来就是家公司,不是慈善机构,不是红十字会,不是救苦救难的观世音菩萨

深度内容

基于Azure云计算平台的网格计算,第3部分:运行网格应用程序

在本系列的第1部分,我们介绍了在Azure上进行网格计算开发的设计模式,而在第二部分,我们用C#开发了一个网格应用程序。在这篇文章中,我们将来运行它。

文化基因生命周期

Julian Everett和Chris Matts认为:一个IT业务案例可以作为一种“文化基因(meme)”。它要在市场区隔这样的复杂生态系统中与其他文化基因——也就是其他IT业务案例 ——竞争。他们还揭示了其背后的理念。

基于VS2010的项目计划与跟踪

本演讲将探讨如何用Microsoft Visual Studio 2010搭配MSF for AgileScrum的流程模版,助力您的团队进行Agile项目的开发工作。本视频为第一部分,演示如何进行项目计划与跟踪。

在不改变语言的前提下如何推进Java的不断演进

在本文中,InfoQ谈到了有助于发掘潜在的新的Java语言特性的3种技术——DSL、注解处理器以及将语法糖从语言迁移到IDE中。

2010年大规模技术架构的思路

相比其他行业,IT技术由于信息流动便捷,新技术更新非常频繁。架构师经常面临新技术及传统方案选择的困惑。架构师应如何抓住本质构建新一代的应用?本文从几个方面提出一些思路供架构师参考。

功能小组模型的过程与质量控制

InfoQ中文站最近采访了微软的Ramesh,在采访中,Ramesh从过程控制、架构与设计的控制以及测试组织等方面分享了他所带领Visual Studio软件生命周期管理工具团队使用敏捷方式组织管理大规模软件团队方面的经验。

张文钿谈Rails开发及台湾Ruby社区

在去年10月份的Kungfurails大会上,InfoQ中文站有幸采访了从台湾专程赶过来的张文钿,与他探讨了关于台湾Ruby社区的发展、Rails的商业化,Restful Design等话题。

Scrum与策略

如果Scrum只关乎短期行为,战略人士又该如何去适应这种生态系统呢?更重要的是,它如何帮助企业领导人做出并且履行重要的承诺?