这两天,甲骨文(Oracle)又被曝出狠活,这次下手的目标则是Java。
据外媒The Register报道,Oracle公司历来主要针对小型企业进行Java软件的合规性审查,确保这些企业遵守Java使用许可和版权法规。如果发现企业使用不符合规定,Oracle可能会要求其补充购买必要的许可证,并可能要求支付相关的罚款或费用。这种做法对Oracle来说是一种收益渠道。翻译翻译,就是要对“大公司”动手了,这些公司恐怕会面临大额账单和罚款。要知道,100强企业中就有98家依赖Oracle的技术解决方案,可以说,Oracle是仅次于Microsoft的全球第二大软件公司。一些企业和开发者担心,Oracle的这种审计行为可能会对Java的生态造成负面影响,甚至有声音认为这可能“扼杀”Java的发展。
收费模式暗藏玄机
在过去的三十年中,Java确立了自己作为全球最广泛使用的编程语言之一的地位。这一成就得益于Java的多功能性、可靠性和稳定性,以及其持续的创新能力,始终紧跟DevOps社区不断演变的需求。Java的这些特性使其成为了软件开发领域的中坚力量。
据 CSDN 即将发布的《2024 中国开发者调查报告》显示,Java 以 40% 的份额成为开发者最受欢迎的编程语言。Java 对于云服务、大数据、电子商务、支付、欺诈和身份、交易等许多应用程序来说都是至关重要的语言。然而,随着时间的推移,变化也随之而来。Oracle 在 2009 年以 74 亿美元价格收购 Sun Microsystem 时获得了 Java 特许经营权,并在往后的多年间快速迭代,今年我们也迎来了 Java 的第 22 个版本。去年,Oracle 官宣对 Java SE 的收费标准进行更改,引发了巨大的争议。从服务上来看,新版 Java SE 和旧版没有太大变化。不过收费方式却天差地别,其从过去根据客户端设备的“Named User Plus (NUP)”和服务器的“Processors”来授权,而后更改为根据企业的「员工」数量来授权。详细如下:如果现在公司员工数量小于 999 人,只要公司用了 Java SE,那每位员工将被收取 15 美元的费用。即在新收费模式之下,一家企业中仅有一位开发者使用 Java SE , Oracle 也会按照企业员工总数进行收费。倘若总员工数量超出 50000,需要详询 Oracle 官方。Gartner 甚至 给出预估,这种按员工付费的模式比传统版本贵 2-5 倍。官方称此举为“一种简单、低成本的每月订阅服务,它包括用于桌面、服务器或云部署的 Java SE 许可和支持”。Oracle 为了 Java 的订阅付费作出的“努力”,让无数开发者直呼:“给它玩明白了!”对于这一政策,批评的声音也从来没有停止过,帮助企业组织由 Oracle Java 转向开源替代品的软件开发公司 Azul 总裁、首席执行官兼联合创始人 Scott Sellers 表示:“在 Oracle 于 2023 年 1 月更改定价政策后,Java 社区出现了强烈的‘这到底是怎么回事?’的反应,因为在我们看来,他们采取了一种非常荒谬的 Java 收费方式,坦率地说,非常不公平。” 从小公司审查到财富 200 强企业
Oracle 在 2023 年 1 月宣布了 Java 这种流行编程语言和开发环境的新许可制度。虽然已经过去了一年多的时间,但关于 Java 许可的审查也越来越严格。
据 The Register 报道,过去 Oracle 主要是针对一些小型的公司发出审计信,要求他们澄清他们的 Java 许可立场。不过,他们却没有对大公司下手。事实证明,不是不采取行动,只是需要时间来推进,这不,现下就已经安排上了。据独立 Oracle 许可咨询公司 Palisade Compliance 的创始人兼首席执行官 Craig Guarente 称,“这种情况在最近几个月发生了变化”。他说,“一个月前,我还会说 Oracle 没有对《财富》100 强或 200 强公司进行高端审计,因为高端审计是有门槛的,但现在已经没有了,上个月,我们看到了 Oracle 向《财富》100 强企业发去了官方的审计告知函。其中一些是给现有的 Oracle Java 订阅用户的,即使他们即将续约;另外,一些没有向 Oracle 支付任何 Java 费用的企业也收到了审计函。所以不管有没有续约,在 Oracle 看来,似乎真的没有区别。” 收到审计函意味着什么?
一家专注于 Oracle 许可证管理服务的管理咨询公司 Redress Compliance 也曾发文进行过详尽解释。其透露,Oracle Java 审计检查 Java 许可合规性分为两种类型:正式审计和软审计。- 涉及正式审计时,Oracle 会在审计开始前提前 45 天发出通知。使用 Java 的组织必须共享相关数据,如提供安装日期、路径、版本和安全补丁等详细信息,但这些数据的构成可以双方具体协商。进而 Oracle 提出其调查结果,企业可以审查并作出回应。
- 相较之下,软审计不太正式,Oracle 可能会从与企业 IT 部门的合规对话开始,进行初次接触,旨在收集一些信息。Oracle 后续基于使用 Java 安全下载记录来推动合规性。这些审计可能会升级,涉及 C 级高管和法律团队等等,推动交易。
Redress Compliance 称,有五种常见情况可能会更大概率地触发审计:- Java 下载和更新:如果你的组织中有人下载或更新过 Java,请注意。Oracle 会严密监控这些下载,其日志最长可达 7 年。
- 2023 年之前的 Java SE 许可证:对于在 2023 年 1 月之前购买 Java SE 许可证的用户,无法续订这些旧许可证。相反,你可能需要接受 Oracle 的软审计。
- 正式审计:拒绝与 Oracle 合作的组织,尤其是在安全下载方面,可能会面临正式的 Java 审计。
- 有限的 Oracle 软件使用:如果你的组织很少或根本不使用 Oracle 软件,你就更有可能成为审计目标。
- 缺乏 Oracle 云策略:没有 Oracle 云基础设施 (OCI) 或软件即服务 (SaaS) 策略的组织更容易受到审计。
根据 Redress Compliance 的经验来看,倘若相关企业收到 Oracle 的审计函,Oracle 通常会识别该企业过去的使用情况,例如过去三年的安全下载以及当前企业的 Java 安装量,然后拟定一份前瞻性协议,建议企业签订一份为期三年的协议,而不是追溯过去三年的使用费。倘若企业不同意,可能就进入了谈判阶段,Oracle 会给出两个选项:此外,Oracle 会对 3 至 10 年期的协议提供 10% 至 20% 的折扣。
上有政策,下有对策
Guarente 警告,客户应该评估自己的处境,只在必要的时候为 Java 付费。他表示,签订长期协议可能会让客户在续签合同时全靠运气。
“一旦你被牢牢锁定,如果你每年向 Oracle 支付 100 万美元,订阅了三年,你认为续订会发生什么?不会是 100 万美元,如果你被锁定,又无法在 30 天或 60 天内迁离 Oracle,你的续订费用就会大幅上升。”新模式成本激增之下,Gartner 针对 Java 用户给出了几种可操作的选择 。- 开发者们可以从 2019 年 1 月以来不再运行任何更新与安全补丁,但此举从安全角度来考量,并不可行。
- 将应用程序迁移到 Java 17,也可以避免这种变化,但这将涉及大量工作,对于许多人来说是不可行的。
- 由于涉及的工作量,将所有 Java 应用程序升级到最新版本的 OpenJDK 这一选项将是不受限制的。
- 可以选择切换到第三方 Java 产品,并将所有未经许可的 Oracle JDK 工作负载转移到 Oracle 云基础设施。
- 用户可以忍痛购买新的 Java SE 通用订阅,这就简单了,价格贵就贵点了。
显然,从多个角度考量后,对高昂的收费标准的“妥协”成了诸多用户“最佳选择”。不过也有不少网友调侃到:“自从收费之后,我开始用 OpenJDK 了”……
https://mp.weixin.qq.com/s/vpWnTlmXOIDV0OEJfmZqighttps://www.theregister.com/2024/06/10/fortune_200_oracle_java_audit/https://www.theregister.com/2023/07/24/oracle_java_license_terms/?td=rt-4a