冤家易结不易解,电商巨头亚马逊势要和软件大亨 Oracle 一扛到底了。
上个月,我们无意中发现,在 Oracle 最新发布的 Java 11 中,用户使用协议发生了变化,新版 Oracle JDK 不可以用在数据处理、商业、产品、或者内部商业用途(需要购买 License),仅可免费用于开发、测试、原型、演示。
这意味着,基于 Oracle JDK 的 Java 将不再免费。对此,诸多开发者在吐槽的同时,想着往 C#、.NET 等其他编程语言转移的可行性,而反观大厂言行,也可谓是相当的霸气了,一年前 Google 宣布 Kotlin 正式成为 Android 的一级开发编程语言,如今 Oracle 的死对头亚马逊更是直接宣布 OpenJDK 的发行版 Corretto 的到来。
“Java 是 AWS 客户使用的最流行的语言之一,我们将致力于支持 Java 并保持其免费。我们的许多客户都担心他们必须支付长期支持的 Java 版本才能运行他们的工作负载。” 11 月 14 日,AWS 首席开源技术专家 Arun Gupta 在 AWS 官方博客上如是说。
而为了更好地提供服务和解决方案,亚马逊曾于 10 月 30 日公开表示:
鉴于 2019 年 1 月之后,Oracle 将终止对 OpenJDK 免费长期支持,现在我们再次明确声明,至少到 2023 年 6 月 30 日,亚马逊依然会对 Amazon Linux 2 中的 OpenJDK 8 和 OpenJDK 11 Java 提供免费且长期的支持。
但是在众多的开发者和用户中,除了 AWS 平台之外,他们也会选择在其他平台上使用 Java。显然亚马逊也考虑到了这一点,因此为了招揽更多的用户再顺便打压一下 Oracle,亚马逊直接一不做二不休,重磅发布了一个免费的、跨平台生产就绪的 OpenJDK 发行版——Corretto。
对此,于去年 5 月加入亚马逊计算的 Java 之父 James Gosling 评价道,“亚马逊在 Java 方面有着悠久而深厚的历史。我很高兴看到我们的内部任务关键型 Java 团队的工作成果正在向世界各地展现。”
那么究竟何为 Corretto?
亚马逊表示,目前已有数千种生产服务上运行 Corretto。Corretto 的补丁和改进使亚马逊能够解决大规模、真实的服务问题,满足严苛的性能和可扩展性需求。未来,亚马逊将通过季度更新(包括错误修复和安全补丁)向客户提供免费,长期支持。
Corretto 支持多种平台,可以在云端、本地和本地计算机上运行它。目前,Amazon Linux 2、Microsoft Windows、macOS 平台和 Docker 镜像都提供了与 OpenJDK 8 对应的 Corretto 8 预览版,当前可通过 aws.amazon.com/corretto 直接下载预览版。而正式版预计将于 2019 年初推出,届时还将支持 Ubuntu 和 Red Hat Enterprise Linux 平台。在这些平台上对应于 Open JDK 11 的 Corretto 11 版本将在 2019 年 4 月之前有足够的时间进行测试。
此外,每个 Corretto 版本上都会运行技术兼容性工具包(TCK),以确保与 Java SE 平台的兼容性。除非在使用 OpenJDK 中没有的功能(例如,Java Flight Recorder),否则 Corretto 可以完全作为所有 Java SE 发行版的直接替代品。一旦 Corretto 二进制文件安装在主机上,并正确调用运行 Java 应用程序(例如,在 Linux 上使用 alternatives 命令),那么现有的命令行选项、调整参数、监视和其他任何内容将和以前一样使用。
亚马逊至少在 2023 年 6 月前,都会免费提供 Corretto 8 的安全更新,在 2024 年 8 月前,会免费提供 Corretto 11 的安全更新。
该如何入门?
使用 Corretto 最简单的方法就是,下载软件包并将其安装到自己所选择的开发平台并确认 Java 版本:
放置轮胎的最简单方法是在您选择的平台上下载软件包并确认Java版本:
% java -versionopenjdk version "1.8.0_192"OpenJDK Runtime Environment (build 1.8.0_192-amazon-corretto-preview-b12)OpenJDK 64-Bit Server VM (build 25.192-b12, mixed mode)
更详细的内容可参考,入门手册:
Corretto Github 源码地址:
Amazon Corretto 的发布意味着亚马逊在全面去 Oracle 的道路上又前进了一大步,与此同时,还将一把刀直接插在了 Java 身上。谈及这两家的不合,其实最初的他们也是好朋友。
回忆起亚马逊的创始人杰夫·贝佐斯最初在创建亚马逊之初,作为技术人的他,为了让亚马逊在传统书店如林的竞争压力中站稳脚,花费了整整一年的时间来建设网站和数据库,而其中的数据库选用的就是性能较高、安全性较强、良好伸缩性的 Oracle 数据库。但是后来,随着亚马逊自家的 AWS 及数据中心的崛起,它无形之中成为了许多长期供应商(如 Oracle)的竞争对手,因此摆脱竞品成为亚马逊的当务之急。
不过对于摆脱 Oracle 的真正原因,据外媒 The Information 报道,2000 年左右,亚马逊开始关注开源数据库的替代品,这并不是为了省钱,而是因为当时 Oracle 的数据库在处理亚马逊快速增长的电子商务流量方面遇到了麻烦,导致了一些灾难性的瘫痪问题,其中包括 2004 年 12 月那次数小时内无法访问网站的问题。
如今看来,对于亚马逊而言,离开 Oracle 早已成必然事件,但对于 Oracle 而言,对亚马逊的弃用表示非常的不解,因为在 Oracle 的定位思想中,“亚马逊技不如人,还妄想摆脱 Oracle”。
真正让两家竞争进入白日化的应当是 2014 年,AWS 推出了 Aurora 数据库服务,这项服务瞄准了 Oracle 的核心市场。对此,在 2016 年 9 月 Oracle 全球大会主题演讲上,向来讲话不留情面的 Oracle CEO 拉里•埃里森直接吐槽亚马逊,其表示“亚马逊云计算很落后,不值一提。甲骨文的云服务要比亚马逊 AWS 快 24 倍,技术上比亚马逊先进 20 年。AWS 是个封闭的系统,用户最终会被迫终生使用它。”
当年 10 月,亚马逊网络服务 CEO 安迪·杰西回应道,我不认为有人们会认同埃里森有关亚马逊云服务言论的客观性。埃里森对亚马逊评论是“技术卫道士”的伎俩,一个云计算领域的后来者,用户也不多,还妄图树立标杆?就连他上个月演讲中提供的数据也是人为做的。
而两个月前,据外媒 CNBC 报道,亚马逊将再一次打击 Oracle。据知情人士透露,亚马逊已经将其大部分内部基础设施迁移到亚马逊云服务上(AWS),并计划在 2020 年第一季度前彻底移除 Oracle 的专有数据库软件。
对此, Oracle 联合创始人兼董事长 Larry Ellison 再次上线,疯狂 diss 亚马逊:
Oracle 软件比亚马逊的产品更强大,包括 Aurora 数据库和 Redshift 数据仓库,没有一个数据库像 Oracle 这样容易使用。亚马逊认为自己是竞争对手,此时要是还使用 Oracle 一定会让他们感觉尴尬。
亚马逊早在 10 年前就想着弃用 Oracle,但是因为他们很难完全依赖自己的数据库技术,所以直到现在他们还在使用 Oracle。他们自己的技术使用起来不方便,同时也不划算。
但让他打脸的是,亚马逊网络服务 CEO 安迪·杰西于近日发 Twitter 表示,亚马逊的消费者业务已经于 11 月 1 日关闭其 Oracle 数据库,并转向 Redshift。到 2018 年底,88% 的 Oracle 数据库(以及 97% 的关键系统数据库)将迁移到 Aurora 和 DynamoDB。
此前,CSDN 也曾发文报道过,去 Oracle 化的科技巨头远不止亚马逊一家,国内的淘宝系、蚂蚁金服、搜狗、国外的 Salesforce 等企业都在去除 Oracle。不过,就是在这样的情况下,根据 DB-Engines 的数据库流行度排行榜发布的 10 月数据显示,Oracle 不仅稳居第一,且相较于上个月有大幅度的增长。
至于其原因,或许正如 DBA Bjoern Rost 所说,抛弃 Oracle 谈何容易,没有人愿意把他们最重要的工作从 Oracle 中迁移出去,这将危及到企业系统性能、可用性和安全性。也没有人会因为在 Oracle 上花过多而被炒鱿鱼,所以为 Oracle 支付巨额买单费用的大有人在。
也有不少网友表示,只有业务量达到一定规模且具有足够的实力才真正地能去的了 Oracle,对此,你怎么看?亚马逊发布的 Corretto 会对 Oracle 商用的 Java SE 带来影响吗?
“征稿啦”
CSDN 公众号秉持着「与千万技术人共成长」理念,不仅以「极客头条」、「畅言」栏目在第一时间以技术人的独特视角描述技术人关心的行业焦点事件,更有「技术头条」专栏,深度解读行业内的热门技术与场景应用,让所有的开发者紧跟技术潮流,保持警醒的技术嗅觉,对行业趋势、技术有更为全面的认知。
如果你有优质的文章,或是行业热点事件、技术趋势的真知灼见,或是深度的应用实践、场景方案等的新见解,欢迎联系 CSDN 投稿,联系方式:微信(guorui_1118,请备注投稿+姓名+公司职位),邮箱(guorui@csdn.net)。