回顾 Oracle Java 15 年及其对生态系统的意义

当 Oracle 于 2009 年 4 月以 74 亿美元收购 Sun Microsystems 时,Oracle 的 Larry Ellison 表示 Java 是“我们收购过的最重要的软件资产”。

虽然企业并不经常公布他们用来支持软件投资的底层平台,但众所周知 Java 支撑着从微服务和后端逻辑到大数据处理的一切,Java持久的兼容性、生产力以及庞大的生态系统和工具支持使其真正无处不在。在我们纪念 Oracle Java 15 周年之际,有必要重新审视这一问题:Oracle 对 Java 的管理对其企业用户和开发人员生态系统意味着什么?

最初几年也经历过一些动荡,例如 Apache 正式退出Java Community Process,以及Oracle 和 Google 之间就使用 Java 开发 Android 进行了漫长的诉讼。但随着时间的推移,Java 平台进入了一段相对平静的时期。

Oracle 开始在主要 Java 版本中推动稳定的增强功能,并大大加快了版本发布的节奏,转而采用可预测的、稳定的 6 个月发布计划,摆脱了过去功能更新不可预测、间隔时间长达 3 至 6 年的历史。每次发布的节奏和强大的功能集都有助于确保 Java 继续成为与每个组织最相关的编程语言之一。

在 Oracle 的管理下,Java 及其开发所在的 OpenJDK 项目已经以完美的 6 个月节奏可靠地连续发布了 13 个功能更新版本。新的长期支持(LTS)版本每两年发布一次,安全和漏洞修复更新每三个月发布一次。该公司还因不断推动技术进步而赢得赞誉。

从技术角度来看,Oracle 引入了新的语言特性并对 JDK、Java 运行时和 JVM 进行了改进,还进行了系统性增强,如改进 Docker 支持和维护定期安全更新。

从一开始,大家就在担忧 Oracle 是否会真正履行保持 Java 开源性质的承诺。2018 年,Oracle 宣布将于 2019 年 1 月结束 Java 8 的免费公共更新,并改变未来 Oracle Java 公共更新的提供和许可方式。这一举措极具颠覆性,导致其他公司和组织提供自己的 OpenJDK 发行版并提供支持和更新的活动激增。从这个意义上讲,开源生态系统继续蓬勃发展,为开发人员提供了广泛的选择,以满足他们的需求。

2018 年宣布,Oracle Java 8 的公开更新只能通过付费订阅 Oracle Java SE 来获得,这向许多人展示了 Oracle 管理的弊端,也预示着我们今天看到的与 Java 支持和更新相关的复杂许可模式和高昂成本。

2019年,Oracle Java 许可证再次变更。它对于个人和开发目的是免费的,但商业用户需要订阅。似乎因此,Oracle 在 Java 开发人员中的受欢迎程度开始下降。Azul 的 2023 年 Java 现状调查和报告指出,全球 72% 的人正在考虑从 Oracle Java 迁移到非 Oracle 发行版,60% 的人已经在使用非 Oracle OpenJDK。

到 2023 年,甲骨文推出全新 Java SE 定价模式。将基于公司总员工数来收取对应的费用,而不是使用 Java 的员工数;意味着即便公司只有一个开发者使用 Java,也会按总员工数量收费。在这种最新的定价模式下,一些客户表示成本增加了 2 到 12 倍。雪上加霜的是,审计压力似乎也在增加。根据 Gartner 的预测,到 2026 年,将有超过 20% 使用 Java 应用程序的企业接受 Oracle 公司的审计,从而产生预算外的违规费用。

这些结构性许可变化和价格上涨使 IT 预算捉襟见肘,特别是对于严重依赖基于 Java 的应用程序的组织而言,促使许多组织不得不探索成本优化策略。

Sun 董事长 Scott McNealy 曾于 2009 年提出了一个问题“Is this Oracle thing a good thing for Java?”,答案是肯定的。Java 对 Oracle 来说无疑是有利的。行业专家估计,自 2019 年 Oracle 开始积极通过 Java 货币化以来,Oracle Java 支持带来的收入已经增长了一个数量级。Oracle 在保持 Java 的普及和流行方面做得很好。由于有可供选择的编程语言种类繁多,Java 可能会失宠,但 Oracle 持续保持更新并与开发人员保持相关的做法值得赞扬的。

不过,Oracle Java 许可和定价的变化似乎对整个生态系统造成了沉重打击。每隔一两年就会改变定价和许可的软件合作伙伴很难让人相信。

尽管如此,由于健康的 OpenJDK 社区为 Oracle 提供了可靠的替代方案,Java 仍然是最流行的编程语言之一。 Azul 的 2023 年 Java 现状调查和报告发现,98% 的企业继续在其软件应用程序或基础架构中使用 Java,并且这些组织中的绝大多数表明 Java 是其大多数 (60% 以上) 业务的支柱。

Oracle 将继续对 Java 的未来产生重大影响,不断增加新功能以延长其使用寿命。与此同时,JVM 具有出色的通用性,开发人员在享受其灵活性的同时不会牺牲性能。OpenJDK 社区依然强大,并将继续推动平台向前发展。从这个角度来看,Java 的前景依然乐观。

来源:SDTimes