歡迎光臨
每天分享高質量文章

龍井“上市”,阿裡巴巴持續開源回饋社區

在本次峰會上,阿裡巴巴還宣佈開源 OpenJDK 長期支持版本 Alibaba Dragonwell,為全球 Java 界開發者提供了一個新的選擇。該版本廣泛應用於阿裡巴巴旗下業務,在大規模 Java 應用部署下的穩定性、效率以及性能優化有突出的優勢。

3 月 21 日在阿裡雲峰會·北京上,阿裡巴巴旗下的阿裡雲當天即發佈多款重磅產品,涵蓋了超級計算、雲原生資料庫,以及SaaS 加速器,包括神龍異構超算集群、新版本 Polardb 可兼容 Oracle 資料庫、輕量級 GPU 異構計算產品——VGN5i 實體等。阿裡雲總裁兼阿裡巴巴 CTO 張建峰稱,阿裡雲已經成為阿裡巴巴經濟體的技術基石,將繼續加大投入,擴大核心技術的代際領先優勢。 

在本次峰會上,阿裡巴巴還宣佈開源 OpenJDK 長期支持版本 Alibaba Dragonwell,為全球 Java 界開發者提供了一個新的選擇。該版本廣泛應用於阿裡巴巴旗下業務,在大規模 Java 應用部署下的穩定性、效率以及性能優化有突出的優勢。

Java 是全球應用最廣泛的語言技術棧。據統計,全球 Java 開發工程師超過 1000 萬名。而 JDK 作為 Java 語言的軟體開發工具包,是整個 Java 應用的核心。當前,在 JDK 全球市場份額中,Oracle JDK 占 70%、OpenJDK 約占 21%。但 2019 年 1 月之後,Oracle 不再提供 Oracle JDK 8 免費商業版本更新。

阿裡巴巴一直不遺餘力地推動全球 Java 技術進步。自 2010 年起,阿裡就開始基於 OpenJDK 開源軟體進行開發與定製。作為全集團 Java 應用的基石,Alibaba Dragonwell 支撐了阿裡經濟體內所有的 Java 業務,保證了多年來“雙 11”的平穩運行,積累了大量業務場景下的實踐經驗。在大規模 Java 應用部署情況下,Alibaba Dragonwell 可以大幅度提高穩定性、效率及性能。

2018 年,阿裡巴巴還作為首家且唯一的中國企業,獲邀加入 Java 全球管理組織 Java Community Process(JCP)的最高執行委員會,為 Java 語言規範作出貢獻。

“Dragonwell 中文譯為龍井,象徵著中國的茶文化,又恰好是杭州特色。well 一詞通常被描述為水源匯聚在一起供大家分享,這也是我們開源的初衷,希望可以集合開發者的力量,不斷完善該專案並最終貢獻給所有用戶。”阿裡雲智慧資深技術專家李三紅在採訪中表示,阿裡本身就是 Alibaba Dragonwell 的最大用戶之一,未來一定會持續維護,這是毫無疑問的。同時也希望有更多的開發者參與貢獻,讓 Java 變得更好。

作為世界頂尖技術舞臺上最活躍的力量之一,阿裡巴巴始終積極擁抱開源,回饋社區。截止目前,阿裡巴巴已經參與了 9 家全球開源基金會及組織,包括 Linux Foundation、Cloud Native Computing Foundation、Apache Software Foundation、Continuous Delivery Foundation 等,是 Linux、MySQL、JVM、Kubernetes、etcd、containerd、Flink、Envoy 等知名開源專案的核心貢獻者和維護者,並主導開源 400 多個專案,涉及中間件、框架、組件、資料庫、儲存、工具領域等。

就此次 Dragonwell 開源的一些情況,記者採訪了阿裡巴巴相關負責人。

Dragonwell,龍井?是寓意像龍井一樣的品質嗎?背後的想法是什麼呢?

Java 本身就是一種咖啡的名字,AWS 開源的 Corretto 也是一種咖啡名。

在取名字的時候,我們也考慮了很多。中國的 Java 開發者將是 Alibaba Dragonwell 重要的用戶群體,所以想從一些有中國特色的飲品名中尋找靈感,既能代表中國的文化,同時也希望這個名字中能有非常宏大的意願,能夠詮釋她包容一切。所以我們想到了杭州的綠茶——龍井。而它的英文名字 Dragonwell 也正好符合我們想要表達的意思。其中的 well 這個單詞,就有著將很多水源匯聚在一起,一同享用的寓意,正好貼合開源的協作分享的精神理念,這也是阿裡開源 JDK 的初衷,希望將許多開發者的貢獻匯聚在一起,讓大家能夠一起免費使用 Java,一起推動 Java 的進步。

為什麼要去做 Dragonwell?是否可以分享一下相關背景?

大家都知道 Java 一直是由 Oracle 主導的,早從 2017 年開始,Oracle 開始陸陸續續轉變了一些 Java 的策略。去年也宣佈了將從今年開始不再提供 OracleJDK 的免費更新。

阿裡可以說是全球最大的 Java 用戶之一,而 JDK 又是 Java 的一個基礎設施。我們其實早從 2010 年開始,就已經基於 OpenJDK 開源軟體進行開發與定製,9 年來,支撐了阿裡經濟體內所有的 Java 業務,歷經多年的“雙 11”考驗,積累了大量業務場景下的實踐經驗。

阿裡作為一家這麼大體量的 Java 用戶,我們有一份責任,就是把我們的 JDK 開放出去,給所有的 Java 用戶一個新的選擇。同時,對於阿裡自身來說,Alibaba Dragonwell 會針對 LTS 的兩個版本 Java8 和 Java11 隨阿裡雲 VM 鏡像發佈,免費提供給阿裡雲客戶使用。

Alibaba Dragonwell 是基於哪個版本的 JDK?什麼時候 GA,目前有沒有各個階段具體的發佈時間表?

此次發佈的 Alibaba Dragonwell 8 預覽版本對應於上游的 OpenJDK 8 的版本。Alibaba Dragonwell 作為 OpenJDK 下游,是一款免費的 JDK 發行版。它提供長期支持,包括關鍵修複和安全更新。

Alibaba Dragonwell 支持 x86-64/Linux 平臺。Alibaba Dragonwell 的特點,或者說她所註重和強化的是:在資料中心大規模 Java 應用部署情況下,穩定性、效率以及性能的優化與提高。

目前發佈的版本是預覽版。 Alibaba Dragonwell 將每季度發佈一個更新。目前計劃是預覽版的三個月後發佈 GA。Alibaba Dragonwell 11 預計年底發佈。 

以後會更註重 Java 新特性的跟進還是保證提供支持呢?對它今後的發展有什麼設想或者標的?

Alibaba Dragonwell 的前身是阿裡巴巴內部使用的 AJDK。作為 AJDK 的開源版本, Alibaba Dragonwell 將沿襲 AJDK 的技術優勢以及實踐場景下的技術經驗。AJDK 有眾多的技術創新, 包括多租戶、Wisp 協程技術、ZenGC 等。 我們希望逐步把阿裡巴巴內部積累的技術創新開源出來貢獻給 OpenJDK 社區, 併在 Dragonwell 沉澱下來。

最近出現了一些開源軟體變更開源協議問題,那目前/將來 Dragonwell 會不會加入一些支持限制條款呢?

不會。Alibaba Dragonwell 是 OpenJDK 下游,我們會嚴格遵循 OpenJDK 社區相關原則及協議。 

前陣子 AWS 也推出了自己的 OpenJDK 發行版 Corretto,背後甚至有 Java 之父“站台”;再往前,其實 Azul、Red Hat 等廠商也有提供 OpenJDK 版本。那麼阿裡的 Dragonwell 有什麼優勢、特點呢?

具體來說:

◈ 緊密與 OpenJDK 社區保持合作,保持對社區工作的跟蹤,及時同步上游更。
◈ Alibaba Dragonwell 發行版與 Java SE 標準兼容。
◈ AJDK 上孵化的創新技術,會逐步貢獻 OpenJDK,併在 Dragonwell 沉澱。比如這次版本包含的 JWarmUp 功能。 具體技術細節可以參考我們的用戶手冊。
◈ 基於阿裡工程實踐,Alibaba Dragonwell 會選擇移植高版本Java的重要功能,這些移植功能已經在阿裡內部被大規模部署,用戶都可以免費使用,而不用等下一個 LTS 版本。比如這次版本移植了上游 Java 11 的 Java Flight Recorder (JFR)功能,Java 開發人員可以通過 JFR 收集 JVM 運行過程中的詳細的 profiling 信息,配合 Java Mission Control(JMC),大幅提高 Java 應用的問題診斷及性能優化效率。這對於仍然停留在 Java8 的客戶來說,還是非常有意義的。

很多開發者使用的都是 Oracle 官方的 OracleJDK,大家什麼情況下會去使用 OpenJDK 發行版,具體到 Dragonwell 是怎樣呢?

在 2018 年 CodeOne(原 JavaOne)大會上,來自 Java Platform Group 的首席架構師 Mark Reinhold 做了“The Future of Java is Today”的主題演講,重點闡述了 Java 發佈樣式的變化,重點是:從 Java11 (包含)以及以後的版本,Oracle 將不再提供免費的長期支持。如果你需要長期支持,可以通過向 Oracle 付費的方式獲得。而 Java8 的更新也將會在 2019 年 1 月份停止。

所以除非你是 Oracle 的付費客戶,否則唯一的選擇就是社區維護的 OpenJDK 版本。可以預見 Java 開發者從 Oracle JDK 切換到開源 OpenJDK 會越來越多。

阿裡作為世界頂尖技術舞臺上最活躍的力量之一,始終積極擁抱開源,回饋社區。我們本身就是世界上最大 Java 用戶之一,未來會持續與 OpenJDK 社區的緊密合作,做好 Alibaba Dragonwell 的維護與開發工作。對於廣大的 Java 開發者而言,Alibaba Dragonwell 是一個免費的新選擇同時我們也希望有更多的開發者能參與到社區里來、讓 Java 變得更好!