騰訊牛逼!終於開源了自家的 Tencent JDK——Kona!!.md

Java技術棧發表於2020-12-07

是的,繼阿里 2019/03 開源基於 OpenJDK 的長期支援版本 Alibaba Dragonwell 之後,騰訊也釋出了自家的開源免費的 JDK 版本——Tencent Kona,必須替小馬哥宣傳一波。

看了下 Github 騰訊開源版 JDK 的釋出記錄:

最早是在 2019/11/04 這天釋出的 Tencent Kona v8.0.0 版本,沒錯,最近棧長村裡通網了,最近才知道騰訊自家版 JDK 這個東東,不辦法,我是村網通,我為我自己帶鹽。

Tencent Kona 8

Tencent Kona 是騰訊開源的、免費的、基於 OpenJDK 的發行版本,並且受騰訊長期支援(LTS)和季度更新,目前由騰訊專業的 JVM 技術團隊進行維護和開發。

開源地址:

https://github.com/Tencent/TencentKona-8

在騰訊內部,Kona 就是預設使用的 JDK,主要應用於騰訊雲業務場景及其他 Java 應用場景,並且針對超大規模的大資料、機器學習和雲端計算進行了深度優化。

另外,Kona 還為那些想用 OpenJDK 的客戶和合作夥伴提供一個基於 OpenJDK 的構建、長期維護支援的騰訊版 OpenJDK 版本。

為什麼是 Tencent Kona 8?

因為騰訊 Kona-8 是基於 OpenJDK 8 開發的,所以叫 Kona-8,8 這個數字是跟 OpenJDK 的版本走的。

Tencent Kona 當前只支援 Linux/x86_64 平臺,現在絕大部分企業系統應用都執行在這個平臺,不是面向基礎使用者,所以沒有必要再開發 Windows 這種沒有意義的多餘的維護成本。

Tencent Kona 8 擴充套件特性

騰訊 Kona 基於 OpenJDK 提供了許多的擴充套件功能及維護特性,通過騰訊 Kona 可以獲得更為先進的功能及效能優化,進而提高使用者和開發者的使用體驗。

Tencent Kona 8 主要支援以下兩個特性:

1)Default CDS Archive

這個特性用於提高 JVM 的啟動速度, 預設為開啟狀態,可以通過以下命令啟動開啟/關閉該特性:

java -Xshare:off 

2)Java Flight Recorder(JFR)

這個特性用於採集 Java 應用程式的診斷資訊,預設為關閉狀態。

啟動的時候可以通過以下命令啟用 JFR

java -XX:+FlightRecorder

應用程式執行時,使用以下命令採集 JFR 資料:

jcmd <your_pid> JFR.start name=<record_name> filename=<dump_file_name>.jfr 

使用以下命令停止 JFR 採集資料:

jcmd <your_pid> JFR.stop

JFR 資料處理可以使用 java mission control (jmc) 7.0以上版本開啟*.jfr檔案,更多可以參考 Oracle 的 JFR 官方文件。

Tencent Kona 8 安裝

下載最新的騰訊 Kona 二進位制檔案,地址:

https://github.com/Tencent/TencentKona-8/releases

cd /usr/local/
tar -xvf TencentKona8.0.3.b2_jdk_linux-x86_64_8u262.tar.gz
export JAVA_HOME=/user/local/TencentKona8
export PATH=${JAVA_HOME}/bin:$PATH
export CLASSPATH=.:${JAVA_HOME}/lib

和官方命令一樣用 java -version 檢視版本:

bash#> java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (Tencent Kona 8.0.3) (build 1.8.0_262-18)
OpenJDK 64-Bit Server VM (Tencent Kona 8.0.3) (build 25.262-b18, mixed mode, sharing)

為什麼大廠都搞定製 JDK?

大家都知道,JDK 8 是現在的絕對主流應用版本(關注公眾號Java技術棧回覆:java,可以獲取 8 系列實戰教程),但 Oracle 作死啊,JDK 8 在 2019/01之後就被宣佈停止更新了,另外, JDK 11 及以後的版本也不再提供免費的長期支援(LTS)。

Oracle JDK 的收費,從網上就可以看到很多使用者抱怨不止,畢竟 Oracle JDK 收費版的支援維護費用不是一般企業和個人能負擔得起的,很多企業和個人開發者也從而轉向其他的免費開源 JDK 版本。

大廠一方面是有錢、有精力、有技術實力,另一方面 Oracle JDK 也不一定符合我們們網際網路大廠的效能要求,如果把收費的錢用來搞自研,不用受制於人,不是更香?所以,為什麼大廠都搞定製 JDK 也就不奇怪了。

可以看到的趨勢,未來將會有越來越多的企業和 Java 開發者進而放棄 Oracle JDK,轉而使用 OpenJDK 或者其他開源複本,又或者基於 OpenJDK 進行自家定製,當然這得有技術實力、有錢的大廠才行。

隨著各大廠都推出自家的 JDK,Oracle JDK 的收費之路還能走多遠?

最後,你們用的哪個 JDK 版本呢?歡迎留言討論分享~

如果有幫助,點個在看鼓勵一下哦!也歡迎分享轉發給更多有需要的朋友~

版權申明:本文系公眾號 "Java技術棧" 原創,原創實屬不易,轉載、引用本文內容請註明出處,禁止抄襲、洗稿,請自重,尊重他人勞動成果和智慧財產權。

近期熱文推薦:

1.Java 15 正式釋出, 14 個新特性,重新整理你的認知!!

2.終於靠開源專案弄到 IntelliJ IDEA 啟用碼了,真香!

3.我用 Java 8 寫了一段邏輯,同事直呼看不懂,你試試看。。

4.吊打 Tomcat ,Undertow 效能很炸!!

5.《Java開發手冊(嵩山版)》最新發布,速速下載!

覺得不錯,別忘了隨手點贊+轉發哦!

相關文章