
若您曾聽過 Azul Optimizer Hub,一個提供Java最佳化的快取,可以更快、更經濟地滿足 JVM 所需的最佳化需求,那是否也曾想過如何在 AWS 架構裡能怎麼發揮作用。對 AWS 架構師來說,在容器化與雲原生環境中執行 Java 工作負載的效能問題並不陌生,特別是 JIT 編譯造成的啟動延遲和額外資源消耗。Optimizer Hub 是一個 Kubernetes 原生的解決方案,能在 Amazon EKS 上執行,並徹底翻轉現有狀況,讓應用程式從第一筆請求開始就能達到最佳化效能。本文提供範例架構,帶您了解,該如何在 AWS 環境中整合這項顛覆性的技術。
在傳統 Java 的執行模式下,程式一開始會先以較慢的直譯方式跑,直到建立出最佳化的效能分析檔後,才會進行優化。也就是說應用程式必須等到實際接收到流量並執行到關鍵程式碼時,才會啟動最佳化。偏偏這經常發生在系統需要因應大量流量而擴充的時候,此時機器的效能卻是最慢的,CPU 不僅要處理請求,還得分心進行高耗能的 JIT 編譯。
透過 Optimizer Hub,Java 應用程式能更快進入最佳效能狀態,並且幾乎不會增加客戶端的 CPU 負擔。
Optimizer Hub 提供兩項服務來解決傳統 Java 的啟動預熱問題:
搭配使用這兩項服務,可以讓應用程式更快達到最佳效能,在啟動預熱期間的 CPU 使用更平順,並減少資源浪費。而且與 Graal Native Image 等其他預熱技術不同,Optimizer Hub 支援任何 JDK 版本,能處理所有 Java 程式碼模式,且不需要對程式碼做任何修改。
Optimizer Hub 以 Kubernetes 叢集的形式提供,通常部署在 Elastic Kubernetes Service (EKS) 中,並在您的 VPC 內運行【圖 1】。

圖 1:Optimizer Hub 以 Kubernetes 叢集形式提供,可在您的 VPC 中運行,以提升應用程式效能。
這個實作的重要細節:
圖 2:一個 Cloud Native Compiler 實例可服務多個 JVM,提升應用程式效能並降低雲端成本。
基礎架構需求:
eksctl 腳本會在您的 AWS 帳號中建立以下資源:
三個公有子網與三個私有子網
一個 Internet Gateway
每個子網的路由表
叢集專用的Elastic IP Address
一個 NAT Gateway
一個 EKS 叢集,包括四個節點群組,每個節點群組配置一個 m5.2xlarge 實例:
為自動擴縮群組(Autoscaling Groups)建立 IAM 資源:
Optimizer Hub 有兩種運行模式:ReadyNow-only 模式與 完整模式(包含 ReadyNow 和 CNC)。ReadyNow-only模式不需要大量資源,也不會進行擴縮。相反地,CNC 在 JVM 啟動的短時間內會快速擴充大量資源,隨著編譯請求減少,再將資源縮減。
Optimizer Hub 的 Operator 不同於傳統依據 CPU 或記憶體指標進行擴縮的 HPA ,它是依據編譯工作負載來擴縮 gateway、compile-broker 和 cache 等元件。系統會監控編譯佇列的長度,並動態分配資源,以確保編譯請求量與處理能力一致。
在生產環境中,您必須在 Optimizer Hub 實例前方部署負載平衡器或服務網格,確保連接 Optimizer Hub 的 JVM 有一個穩定、單一的入口點與服務通訊。您可以使用以 DNS 為基礎的負載平衡器(例如 Amazon Route 53)或 Kubernetes 服務網格(例如 Istio)。此外,Optimizer Hub 的 gateway 提供標準的就緒檢查,可用來判斷何時將流量導向叢集,確保服務可靠且高可用。
我們建議在生產環境中至少部署兩個 Optimizer Hub 實例。通常會在每個可用區域放置一個實例,以降低延遲;同時,每個實例也可作為其他可用區域的備援實例,當其中一個區域的實例故障時,可確保服務不中斷。
Optimizer Hub 的實例可以設定自動同步 ReadyNow 配置檔,這樣如果某個應用程式最近的實例不可用,其他實例仍然擁有所需的配置,確保預熱順暢。
若 Optimizer Hub 無法使用,新啟動的 JVM 仍能運行,但預熱速度會變慢,有時程式碼執行效率也會降低。說明如下:
Azul 提供企業級 Java JDK 解決方案,專為商業環境設計,確保高效能與穩定性,同時降低總體擁有成本(TCO)。Azul Platform Prime 是專為高效能企業應用設計的商業級 Java JDK,可確保應用程式在高併發與低延遲環境下穩定運行。與傳統 JVM 相比,Azul Platform Prime 可大幅提升吞吐量,減少記憶體佔用,並優化 CPU 使用率,使企業能以更少的資源獲得更高效的運行效能,幫助企業優化基礎架構成本。其獨特的技術優勢包括更快的啟動時間、更低的延遲,以及更高的應用程式穩定性,確保企業系統在高負載環境下仍能保持流暢運行。此外,Azul 提供企業級支援與安全性更新,確保 Java 環境始終符合最新的合規要求與最佳效能標準。
特色優勢:
若想進一步了解 Azul,歡迎於官網留下資訊,將有專人與您聯繫
https://www.gss.com.tw/product-services-nav/info-security/azul