時代變遷
然而,與此發布計劃相關的許多其他變化將在今年顯現出來,並且可能不那麼令人愉快。在超過 22 年半的時間裡,我們已經習慣了一個事實:Java 作為一個平台,具有三個與其支援方式直接相關的基本屬性。-
穩定。以前,新版本的 JDK 新增的功能雖然經過了全面測試,但仍需要在生產中進行測試。這有助於發現需要糾正的缺陷。為了確保使用者可以在測試新版本的同時繼續使用穩定的版本,更新總是在時間上部分重疊。
如果我們查看從 JDK 6 開始的最後幾個版本,我們會發現 JDK 5 的更新又持續發布了近 3 年(準確地說是 2 年 11 個月)。隨著 JDK 7 的推出,JDK 6 的公開更新發布了一年 9 個月。JDK 7 的更新是在 JDK 8 發布後 13 個月內發布的。
-
安全。OpenJDK 開發和支援團隊、Oracle 以及先前的 Sun Microsystems(創建 Java 的公司,編者註)始終將平台安全性放在首位。您還記得,Java 最初是為行動裝置(特別是 Star7 PDA)設計的。
關鍵的開發目標之一是確保程式碼可以透過網路傳輸並安全執行。JDK 會定期發布更新,其中包含已發現的安全性問題的修補程式。如果您在這些更新發布後立即安裝它們,那麼您將是完全安全的。
-
零成本。Java 的一大優點是它一直是一個免費平台,甚至在 2006 年作為開源軟體發布之前也是如此。對於可以免版稅使用 Java 的地方存在某些限制,但這始終適用於行動和嵌入式應用程式;對於桌面用戶端和企業伺服器,當前版本的 Java 始終免費。JDK 已經發生的變化之一是在 GPLv2 許可證下發布 OpenJDK 可執行文件,但「類別路徑」例外。該許可證不會對如何部署 Java 執行環境施加任何限制。
讓我再解釋一下
假設您擔心安全(這是您應該關心的),但您不想花錢。在這種情況下,您需要在新的 JDK 版本發布後立即遷移到它們。如果支援時間不重疊(功能和 LTS 版本),您將必須這樣做才能收到新的安全修復。不幸的是,如果沒有時間重疊,您將不得不立即轉移到尚未在生產中測試的 JDK 版本,因此您將失去先前的穩定性。另一個選擇是選擇零成本的穩定性。同樣,這是可能的:您所要做的就是在新版本發布後繼續使用先前的 LTS 版本。您可以獲得熟悉的穩定性,無需支付任何費用,但您不會獲得任何安全補丁,因為此版本不再提供這些補丁。最後,如果你想要穩定和安全,你必須付費。您可以繼續使用以前的 LTS 版本,但只能透過商業支援合約才能獲得安全性和錯誤修復。還有作者的一個小廣告區塊:)
Azul(我的公司)在Zulu Enterprise 品牌下創建了一組OpenJDK 可執行文件,從原始程式碼構建,使用TCK/JCK 基準進行測試,甚至使用我們開發的實用程式進行分析,以確保不會因錯誤的頭檔而導致開源程式碼損壞。我們提供免費下載當前版本的機會,並為有興趣的人提供商業支援。我們最近開始為 Zulu 提供一套新的支援選項,旨在為客戶提供最大的靈活性。我們希望為用戶提供遷移到適合其業務和客戶需求的新版本 JDK 的能力。為此,我們提供三種支援選項:- 短期支持(STS)。STS 使用戶能夠以最快的速度存取新的 Java 功能,並為平滑過渡到新的 JDK 版本提供足夠的支援。Zulu Enterprise 為 STS 版本提供為期 12 個月的錯誤修復、安全更新和其他所需修復(「生產支援」),以及 6 個月的額外支持,重點是諮詢支援和幫助用戶遷移到較新版本的 JDK (“擴展支援”)。這相當於 18 個月的生命週期。
- 中期支援(MTS)。MTS 版本可讓您在生產中使用功能版本中提供的新功能,而無需等待新的 LTS 版本。Azul 計劃在 LTS 版本之間每年發布一個 MTS 版本,並在下一個正式發布 LTS 發布日期後的 18 個月內提供生產支援。這確保了生產部署期間的時間重疊和「平滑」過渡。生產支援結束後,將提供額外 12 個月的擴展支援。
- 長期支持(LTS)。它是為 OpenJDK 社區視為 LTS 的版本提供的,並提供 8 年的生產支援以及額外的兩年擴展支援。
結論
今年,Java 平台的多個方面都發生了變化,其中大部分都變得更好了。更快地存取新功能,開放發布飛行記錄器和任務控制等實用程序,在 GPLv2 許可證下發布 OpenJDK 可執行檔(「類路徑」例外)。然而,令人悲傷的事實是,通常對 Java 平台慷慨的免費支援正在成為過去。Java 仍然穩定、安全且免費。這三個特質中哪兩個對您和您的用戶最重要?
關於作者 Simon Ritter 是 Azul Systems 的副技術總監。Simon 自 1984 年以來一直從事 IT 行業,並擁有英國布魯內爾大學物理學學士學位。 Simon 於 1996 年加入 Sun Microsystems,從事 Java 開發和諮詢工作。自 1999 年以來,他一直向開發人員展示 Java 技術,專注於核心 Java 平台以及客戶端和嵌入式應用程式。現在,他在 Azul Systems 繼續幫助人們更了解 Java 和 Azul 的 JVM 產品。您可以在 Twitter 上關注他:@speakjava。 |
還有什麼可讀的? |
---|
GO TO FULL VERSION