2019 年 Java 使用者開始被收費,導致許多企業組織面臨高額帳單,因此紛紛轉向尋求遵守 OpenJDK 標準的社群,例如 Adopt OpenJDK、甲骨文 OpenJDK 等。

然而,與 Java SDK 相關的安全漏洞層出不窮,再加上即便改用其他 OpenJDK,也會遇上作業系統相容性問題。

有不少使用者因此感到為難,難道一定要支付高額費用,才能確保 Java 環境安全穩定?更有使用者想乾脆永遠停留在免費的特定版本,無視安全風險。另外,更有開發者對於 Java 影響開發系統效能有所顧忌,因此思考是否換成其他語言進行開發。

但 Java 又有豐富的函式庫以及上千萬人的開源社群貢獻龐大資源,是否有魚與熊掌兩者兼得的解決方案?

答案是有的。全球唯一專注於Java 和 JVM 的 Azul ,同時也是全球最大的 OpenJDK 供應商,相較其他供應商支援更廣泛的 Java 版本。可以解決上述企業組織所面臨的困擾與挑戰,包括 Java 的安全性支援、優化雲端服務成本,提升應用程式效能,以及更安全 Java 的替代解決方案.能讓企業商業發行且合規。

Azul 透過 4 大創新提高 Java 效能

Azul 大中華地區銷售總監 Stanley Zhang 指出,Azul 的旗艦產品- Azul Platform Prime 擁有許多專利技術用來提升 Java 效能,像是更強大的 JIT 編譯器、低延遲高可用的垃圾回收,被開發者稱為「JDK 的戰鬥機」,「Azul Platform Prime 為最強兵器。」Stanley 笑說。

這是因為 Azul Platform Prime 擁有 4 大優勢,可以解決 Java 或者其他 JDK 的常見痛點。首先,第一個便是垃圾收集(Garbage Collection)問題。

通常來說,許多大容量 Java 應用程式沒辦法滿足企業用戶服務等級要求的關鍵原因之一,就是關鍵應用經常「被暫停」,就為了執行垃圾收集。「這就好比我在跟客戶線上開會時,家人敲敲門請我一定要現在就打掃房間,」Stanley 形容,「那我是不是就得暫停會議,起身打掃房間?」這就是垃圾收集會產生的問題,中斷了原本的效能(開會)或者造成應用「抖動」不穩定。

「對於一些關鍵場景來說,這就會相當致命,因為某些應用場景下,可能零點幾秒的中斷都不能接受,例如:支付、股票交易等,無論是中斷或不穩定,對客戶的體驗都會造成很大的影響。」

而 Azul Platform Prime 則透過獨立於 Java 執行環境的 C4 垃圾收集器機制,能在不影響應用程式下協調資源完成工作。「好比是一台掃地機器人,能在我開會的同時,幫我打掃好房間,我不必暫停現在正在進行的關鍵任務(線上會議),也能得到一個乾淨的房間,並且我的會議與打掃環境,這兩件事情互相完全獨立。」

其次,透過 AI 與機器學習技術,Azul Platform Prime 能學習在流量尖峰時,應用系統如何處理程序,並把處理模式規則保存在 Azul JDK 中。

「例如每年的雙11,已經可以預知會有高流量產生,那麼如此一來,當下次(下一年的雙 11)要啟動雲端新運算資源時,就能讓程式先『暖機』,以立即地達到系統最佳狀態,更有效地處理訂單,這些保存在 Azul JDK 的記憶,就好像很熱的引擎,企業只要把它馬上裝進車裡,就能達到理想的時速,直接從零到百。」Stanley 形容。

第三、Azul 將編譯器以 LLVM 技術為基礎的 Falcon JIT Compiler ,可產生機器讀得懂的程式碼,提高編譯效率。LLVM 也是蘋果 iOS 使用的編譯工具。「Azul 把 Java 內部老的編譯器,全換成 LLVM,讓常見的編譯可以先做到預先編譯,另一方面則把其直接翻譯成機器語言。」

第四、內建自動化調優工具,可解決記憶體溢位等應用效能瓶頸問題,減少資深工程師人力調校成本浪費,有如不必休息的機器人專家,「如此一來,企業內部的資深工程師,就能更專注在核心開發工作上,而不是花時間在處理日常的麻煩事務。」

而對於那些必須對外提供 SLA 要求的應用服務,或是須面對消費者,有特別高流量的應用場景,如:電商節慶、新遊戲上架、大數據應用服務等,「Azul Platform Prime 特別適用於企業關鍵的核心應用系統。」Stanley 說。

此外,對於提供各種雲端服務的業者來說,隨著服務使用量提升、雲端帳單也往往也居高不下。

透過 Azul Platform Prime 對底層 JDK 的優化能紓解上層應用服務延遲的問題,進而有助於降低雲端服務成本。使用相同伺服器下,透過 Azul Platform Prime 能使效能增加 3 成至 5 成。亦即若要達到相同效能,原需使用 100 台伺服器,在使用Azul Platform Prime 後只需 50 台。

安全 & 合規 & 法律諮詢,Azul Platform Core 如何助企業更安心使用 OpenJDK?

而即便不像 Azul Platform Prime 提供上述「旗艦版」功能,一般性的商業應用服務 Azul Platform Core也能確保企業安全、合規使用 Java,並得到商業支援,對於服務效能要求不那麼高的企業,Azul Platform Core 也能應用到非常多的場景。

Stanley 指出,Azul Platform Core 提供純安全修復更新和全功能修復更新,因此能在每季公布 Java 平台的弱點之前,便先提供企業使用者經過測試的最新安全更新程式,避免系統漏洞遭受攻擊。「若是一般 OpenJDK 就無法得到這樣的保護。

隨著 Java 問世 20 多年,企業內部有許多不同年代的應用系統在不同 Java 版本上開發,儘管新版本功能強大,但在舊版本上的系統若要升級需耗時費力測試。若沒有必要性,企業通常都不太想變動,且經常面臨的問題是:當初開發的工程師已離職,或委外開發的廠商倒閉,導致系統發生問題無人能解,或是想修改功能也無能為力。

Azul 則提供最多版本、最長期間的 JDK 支援,即使是市場上其他解決方案已停止支援的 JDK 6或只支援到今(2022)年的 JDK 7,乃至最新版本的 JDK 18,Azul 都能提供支援。

此外,在許多大型企業中,也常見不同開發團隊使用各家不同的 JDK 或 OpenJDK,然而卻往往搞不清楚共有哪些版本、是否安裝修補程式、對應到哪些應用系統等。

在台灣市場長期與 Azul 進行深度合作的叡揚資訊,其資安事業處處長范家禎指出,企業必須善用軟體組成分析(SCA)等盤點工具,掌握企業使用哪些開源元件及版本,如此一來,一旦發生新的攻擊事件,才能清楚將對系統產生哪些影響,並且知道如何因應。Azul 亦推出 Intelligence Cloud 服務,可用於雲端環境的自動進行資產掃描、任務編排等管理工作,進而產生顯著的成本效益。

上述種種優勢,已讓不少大型企業開始選擇使用 Azul Java。「Azul Platform Core 的遷移工作相當簡單,通常只需要一個早上就可以建置完成,且所有服務經驗裡都是 100% 遷移成功,成本更能有效降低至少 70%。」

Stanley 補充說,若是客戶希望維持舊的 Java 版本,但同時希望獲得 Java 新版本的一些功能,在技術可行的狀況下 Azul 與叡揚資訊也會考慮協助企業移植新版本的部分模組到 Java 舊版本上,客戶便無須擔心升級到新版本後,會出現不適用的問題。

Azul 與叡揚資訊致力於為台灣企業提供更好的 Java 解決方案。叡揚資訊資安事業處處長范家禎 (左)/Azul 大中華地區銷售總監 Stanley Zhang(右)/圖片來源:叡揚資訊提供。

Azul 亦支援使用其他 OpenJDK 的用戶,並持續將研究成果回饋至開源社群

Azul 作為 OpenJDK 社群裡的主要貢獻者,公司有 5 位高級技術專家亦在 OpenJDK 委員會中擔任核心成員,秉持著「幫助企業更深入充分地使用 Java」的使命與信念,Azul 對於開源組織亦抱持尊重與感恩,亦持續將 Azul 內部的研究成果,持續回饋到開源社群,形成良善循環。

因此,Azul 不只對使用 Azul 產品的企業組織提供商業支援,也同時支援使用其他主流 OpenJDK 的用戶,提供上述包括安全更新、智財保障、應用系統中斷故障排除等支援服務,讓企業能更安心使用 Java。

(本文開放合作夥伴轉載,首圖來源:Shutterstock。)