写点什么

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

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

关注

评论

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

技术分享 | 学做测试平台开发-Vuetify 框架

霍格沃兹测试开发学社

物联网设备上云难?华为云IoT帮你一键完成模型定义,快速在线调试设备

华为云开发者联盟

后端 物联网 华为云

我是一个垃圾

蝉沐风

JVM 老年代 垃圾回收 GC 新生代

渗透测试 vs 漏洞扫描:差异与不同

SEAL安全

网络安全 渗透测试 软件安全 软件供应链安全

建木×GitLink,解锁高效开发新体验

Jianmu

DevOps 持续集成 CI/CD 自动化运维 建木

没有一个顺手的流程绘制工具?好吧,自己动手,丰衣足食!

江南一点雨

Java springboot BPMN

如何应对ITSM难题,打造现代化、高效的ITSM解决方案?

龙智—DevSecOps解决方案

ITSM ITSM软件 ITSM解决方案

技术分享 | 想测试入门就必须要懂的软件开发流程

霍格沃兹测试开发学社

技术分享 | 一步一步学测试平台开发-Vue restful请求

霍格沃兹测试开发学社

支持公有云/私有云平台运维监控工具哪个好?怎么操作?

行云管家

云计算 运维 自动化 云运维

服务网格 实现超时和重试

CTO技术共享

bboss http负载均衡器使用指南

大河

HTTP bboss httpproxy

技术分享 | Frida 实现 Hook 功能的强大能力

霍格沃兹测试开发学社

技术分享 | 测试平台开发-前端开发之数据展示与分析

霍格沃兹测试开发学社

韶关等保测评公司地址在哪里?电话多少?

行云管家

等保 等保测评 韶关

Python实战之用内置模块来构建REST服务、RPC服务

山河已无恙

RPC REST API Python.

技术分享 | 这些常用测试平台,你们公司在用的是哪些呢?

霍格沃兹测试开发学社

快速上手Elasticsearch bboss restclient

大河

elasticsearch bboss restclient

使用 vue 开发 YonBuilder移动开发应用的教程

YonBuilder低代码开发平台

荣耀智慧服务开发者扶持计划,百亿曝光你心动了吗?

荣耀开发者服务平台

小程序 大数据 卡片服务 快应用 荣耀

设计模式的艺术 第三章单例设计模式练习(设计一个数据库连接池,能自行提供指定个数实例对象的数据库连接类)

代廉洁

设计模式的艺术

字节跳动基于 ClickHouse 优化实践之“查询优化器”

字节跳动数据平台

OLAP Clickhouse 查询优化 数据库开发 数据引擎

技术分享 | 专项测试技术初识Hook

霍格沃兹测试开发学社

openGauss内核分析:执行计划生成

华为云开发者联盟

数据库 后端

kube-schedulersimulator 模拟调度器环境

CTO技术共享

正则表达式中使用-的一个小坑

agnostic

正则表达式

最常见的两个Jenkins问题,以及解决方法

龙智—DevSecOps解决方案

ci CI/CD CI/CD管道

如何建立开源战略

龙智—DevSecOps解决方案

开源 漏洞修复 漏洞检测 漏洞管理

Http/Https插件使用指南

大河

https HTTP Data ETL bboss

技术分享 | 测试平台开发-前端开发之Vue router路由设计

霍格沃兹测试开发学社

Docker 容器网络配置

CTO技术共享

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