從Oracle JDK遷移到Open JDK


讓我們首先討論遷移的必要性。根據Oracle在2018年釋出的宣告,從2019年1月起,企業必須購買商業許可證(即Oracle許可證)才能獲得軟體升級。 這包括維護Oracle Java,更新到最新的補丁級別以及支付會員費。您可以瞭解一下價格:每個伺服器核心都需要許可,每個核心每月需支付25美元。

此外,即使叢集中只有一個Java伺服器,如果它是虛擬化的,許可證價格也將適用於伺服器的所有“核心”。

Oracle JDK和Open JDK

先決條件

Oracle對高於Oracle Java SE 8 patch 211和JDK 11的版本都收取會員費用,從安全漏洞的角度來看,將版本保留在較舊的、不受支援的補丁級別是不理想的。因此,我們必須確定為了執行伺服器上的任何應用程式是否真的需要Oracle Java SE或JDK安裝。

對於您擁有的每個伺服器,為每個伺服器選擇相關選項。

  • 如果不需要Oracle Java,請解除安裝它。

  • 如果滿足您的需求,請選擇再次使用開源版本。

Oracle JDK的現有實現

讓我們首先回顧一下Oracle支援的最新非收費Java版本Java 1.8.0.202(64位)的要點。

  • Open JDK和Oracle JDK最大的區別在於許可。Open JDK是完全開源的Java,具有GNU通用公共許可證。Oracle JDK根據Oracle二進位制程式碼許可協議需要商業許可證。

  • 自2019年1月起,想要獲得軟體更新的組織必須購買商業許可證(來自Oracle)。

  • 過去,Oracle JDK的效能優於Open JDK。然而,Open JDK的效能正在提高。而且Open JDK社群的貢獻經常超過Oracle JDK。

  • 這實際上歸結為支援,因為Open JDK與Oracle JDK共享99.9%的程式碼(取決於您從哪個供應商獲得它)。

Open JDK生命週期日期和RHEL版本

Open JDK版本的支援如下:

  • Open JDK 6 (1.6) 5.3 6.0 7.0 N/A 2016年12月

  • Open JDK 7 (1.7) 5.9 6.3 7.0 N/A 2020年6月

  • Open JDK 8 (1.8) N/A 6.6 7.1 8.0 2026年5月

  • Open JDK 11 N/A N/A 7.6 8.0 2024年10月

對於在RHEL和Windows上部署Open JDK,服務級別協議 (SLA) 和覆蓋範圍 (SoC) 分別在生產支援覆蓋範圍和生產支援服務條款中定義。

釋出計劃

Oracle每三年釋出一次,而Open JDK每六個月釋出一次。

許可證

Open JDK根據GNU通用公共許可證(GNU GPL)版本2(帶有連結例外)許可,這與Oracle JDK的Oracle二進位制程式碼許可協議形成對比。

效能

由於Oracle JDK的構建過程基於Open JDK的構建過程,因此兩者之間沒有重大的技術差異。Oracle在響應速度和JVM效能方面表現出更優越的效能,因為它非常重視其商業客戶,因此更注重穩定性。另一方面,Open JDK將更頻繁地提供更新。因此,我們可能會遇到不穩定性問題。

特性

在比較特性和設定時,我們可以看到Open JDK具有字型渲染特性,而Oracle產品具有Flight Recorded、Java Mission Control和應用程式類資料共享功能。此外,Oracle提供更優越的渲染和額外的垃圾回收選項。

開發和普及

與由Oracle、Open JDK和Java社群共同開發的Open JDK不同,Oracle JDK完全由Oracle公司開發。但像Red Hat、Azul Systems、IBM、Apple Inc.和SAP AG這樣享有盛譽的公司也積極參與其發展。

成本效益分析

維護Oracle Java,更新到最新的補丁級別,並支付會員費。您可以瞭解一下價格:每個伺服器核心都需要許可,每個核心每月需支付25美元。此外,即使叢集中只有一個Java伺服器,如果它是虛擬化的,許可證價格也將適用於伺服器的所有核心。

Oracle JDK和Open JDK的比較

特性

Oracle JDK

Open JDK

長期支援選項

Java 8 直到 2022 年(主要支援)和 2025 年 3 月(擴充套件支援)

Java 11 直到 2023 年 9 月(主要支援)和 2026 年 9 月(擴充套件支援)

每個版本的月度支援週期,如果您想使用受支援的Java版本,則必須更新JDK版本

TCK相容性

相容

相容

免費/商業基礎

需要購買許可證。許可證數量取決於使用Java的處理器、核心和使用者數量。

JDK是免費的。GNU通用公共許可證V2,帶有類路徑例外

(GPLv2+CPE)

支援

Oracle

社群

成本

每年40,500美元

免費

結論

經過仔細研究,很明顯,在Open JDK和Oracle JDK的爭論中,Open JDK佔據了相當大的優勢。由於Open JDK是一個開源平臺,因此鼓勵Java開發人員為進一步發展該平臺做出貢獻。最終,我們將見證許多優秀的Java開發人員(他們使用Open JDK並且以前是Oracle JDK的積極貢獻者)所做的豐富創造性工作和成果。

更新於:2023年8月1日

瀏覽量:236

啟動您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.