写点什么

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:362349
用户头像

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

关注

评论

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

计算机网络(一):计算机网络概念、功能、组成

游坦之

计算机网络 11月月更

2022-11-27:超过经理收入的员工。编写一个SQL查询来查找收入比经理高的员工。以下数据的结果输出是Joe,因为Joe是唯一挣得比经理多的雇员。 DROP TABLE IF EXISTS `em

福大大架构师每日一题

MySQL 数据库 福大大

云原生下日志采集的3种方式

穿过生命散发芬芳

11月月更 云原生日志采集

电商系统微服务拆分设计

π

架构师实战营

模块六-拆分电商系统为微服务

Geek_b35d92

微服务 拆分

基于一段神奇的CSS渐变制作噪点效果

南城FE

CSS 前端 css特效 渐变

架构实战营模块6作业-拆分电商系统为微服务

冷夫冲

架构 「架构实战营」

架构模块六-作业

许四多

【JavaWeb】 一文搞懂Request

游坦之

javaWeb Request 11月月更

【Servlet】这一文详细的讲述了Servlet的知识,呕心沥血,终于文成。

游坦之

javaWeb Servlet 11月月更

ELK 各组件功能及Elasticsearch 的节点角色类型介绍

忙着长大#

ELK

Titus网关中的缓存一致性机制

俞凡

架构 netflix 大厂实践

软件设计与体系结构 实验二 经典软件体系结构风格(二)

游坦之

设计模式 11月月更

基于 Pipeline 实现完整的代码部署流水线

忙着长大#

浅谈MySQL Binlog日志

闫同学

MySQL 数据库 Binlog 11月月更

电商微服务架构图

Johnny

架构实战训练营9期

跳板机逐渐被堡垒机替代的最主要原因是这个!

wljslmz

运维 堡垒机 跳板机 11月月更

【JavaWeb】 Mybatis-01-Mybatis的简介:用对话的方式让你明白为什么要使用Mybatis

游坦之

mybatis javaWeb 11月月更

【JavaWeb】 Mybatis-02-Mybatis的快速入门

游坦之

mybatis javaWeb 11月月更

实验六 设计模式

游坦之

设计模式 11月月更

极客时间运维进阶训练营第五周作业

忙着长大#

极客时间

分布式锁:不同实现方式实践测评

闫同学

Go 分布式 后端 分布式锁 11月月更

发布MagicOS 7.0, 荣耀如何打造“松弛感”的操作系统?

脑极体

【Tomcat】贰-Tomcat集成到Idea:解放双手,让Tomcat的操作没有那么难用

游坦之

tomcat javaWeb 11月月更

运维进阶训练营 -W05H

b1a2e1u1u

运维

Vue复刻华为官网(三)

游坦之

Vue 11月月更

Maven 如何配置推送的仓库

HoneyMoose

【JavaWeb】 Mybatis-03-Mybatis代理开发

游坦之

mybatis javaWeb 11月月更

【SpringBoot】引入mybatis及连接Mysql数据库

游坦之

spring-boot 11月月更

软件设计体系 实验一 经典软件体系结构风格

游坦之

设计模式 11月月更

【SpringBoot】@Enable*注解和@Import

游坦之

spring-boot 11月月更

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