Azure Spring Apps Enterprise – 更強大的功能、更高的可伸縮性以及擴充套件的Spring Boot支援

工程 | Josh Long | 2023年7月11日 | ...

你敢相信Spring今年正在慶祝20週年紀念嗎?如果沒有我們遍佈全球的數百萬Spring開發者,我們不可能走到今天,謝謝你們!Spring一直是Java開發者的重要工具,並且以快速的步伐不斷發展和創新。從一開始,Azure和VMware Tanzu就一直是執行關鍵Java和Spring工作負載的客戶信賴的合作伙伴。我們對Java Spring開發者社群的承諾和喜愛從未動搖。

Microsoft與VMware Tanzu的合作持續進行

自 2016 年與 Spring 團隊建立合作以來,雙方的共同目標一直是幫助 Spring 應用充分發揮雲的強大功能。我們傾聽了 Spring 開發者的聲音,他們渴望專注於應用程式程式碼和業務邏輯,而不是被基礎設施、容器和虛擬機器管理、安全和擴充套件的複雜性所困擾。為解決這一痛點,Microsoft 和 VMware Tanzu 聯手推出了 Azure Spring Apps——旨在簡化您的開發和運營工作流程,並加速您的程式碼到生產的旅程。作為 Microsoft Azure 生態系統中的一項關鍵服務,Azure Spring Apps 已經取得了顯著的進展。許多客戶,包括 BoschDigital RealtyFedExKrogerLiantisMorgan StanleyNational LifeRaley'sSwiss Re,都已採用該服務來部署其任務關鍵型企業 Java Spring 應用程式。

Azure Spring Apps Enterprise 旨在透過提供商業支援的 Spring 執行時元件和 Spring 專家的訪問許可權,來加速企業應用程式的開發和部署。它建立在 Standard 層的現有功能之上,允許使用者利用廣泛的 Azure 生態系統來增強他們的 Spring 應用程式,從而加快產品上市速度並充分實現 Spring 的全部功能。

今天,我們非常高興地宣佈 Azure Spring Apps Enterprise 的重大增強。這些改進將提高安全性、加快開發速度、增強可伸縮性,並提供更大的靈活性和可靠性。我們很興奮地與您分享這些進展,並期待看到它們將如何提升您的體驗。

Java 應用和 GraalVM

在傳統設定中,Java 應用程式執行在 Java 執行時環境 (JRE) 中。然而,GraalVM Native Image 功能的引入標誌著一個重要的轉變。它允許您將 Java 應用程式編譯成獨立的、可執行的程式,也稱為原生映像。這一新過程的優勢是顯著的;與傳統的 Java 虛擬機器 (JVM) 相比,原生映像提供了更快的啟動時間和更低的執行時記憶體開銷。現在,在 Azure Spring Apps Enterprise 中,您可以透過 Cloud Native Buildpack for Java Native Image 部署 Spring 原生映像應用程式,使整個過程更簡單、更高效。您可以在下面閱讀有關此增強功能的更多資訊。

增強的功能

在過去的五年裡,我們的理解和知識受到了開發者和客戶的經驗和反饋的深刻影響。我們致力於傾聽客戶的聲音和滿足他們的需求。認識到執行和擴充套件企業應用程式的需求日益增長,我們很高興地宣佈一系列針對 Azure Spring Apps Enterprise 的增強功能。這些增強功能直接體現了我們不斷滿足並超越客戶期望的努力。

圖 1 - 展示了 Azure Spring Apps Enterprise 的增強列表:之前 vs. 現在 & 使用者收益

探索增強的功能及其主要優勢

讓我們來看看增強的功能及其主要優勢。

享受增強的可靠性和大幅縮短的停機時間

改進的服務級別協議 (SLA):Azure Spring Apps Enterprise 現在提供改進的 SLA,達到 99.95%,提高了可靠性並減少了企業的潛在停機時間。

此增強功能預計每年可減少約 4.34 小時的潛在停機時間,比之前的 SLA 減少了 50%。在考慮 Azure Spring Apps 管理的所有元件時,新的 SLA 提供了全面的保證。這包括關鍵元素,如 Azure Kubernetes Service、Azure Storage、Azure Container Registry、網路元素以及各種 Spring 元件,如 Application Configuration Service、Service Registry、Spring Cloud Gateway 和 Tanzu Build Service。本質上,99.95% 的 SLA 提供了更一致、更可靠的服務,並顯著減少了中斷,這對業務關鍵型運營的企業至關重要。

這種全面的保證與 DIY(自己動手)應用程式環境的 SLA 形成了鮮明對比,在這些環境中,SLA 是各種獨立服務 SLA 和您自建的控制平面元件(如果有)的彙總。例如,完全託管的 K8s 服務為 Kubernetes API 伺服器連線提供 SLA,但不為執行您應用程式工作負載的節點提供 SLA。這些節點是虛擬機器,有自己的 SLA。Azure Storage 和 Azure Container Registry 等服務也有自己的可用性保證。當您在 Kubernetes 環境中使用自己的入口控制器和 Spring 元件時,您必須確保所有必要的冗餘和儀器化,以衡量 SLA 並糾正停機時間。要實現與 Azure Spring Apps Enterprise 的 99.95% 相媲美的應用程式可用性,您需要為所有服務元件和您的控制平面元件構建冗餘,並持續監控和調整任何中斷。

體驗增強的可伸縮性 — 容量增加

增加包括增強的託管,最多支援 1000 個應用例項,支援大型應用,以及高效的構建流程。

最多 1000 個應用例項:Azure Spring Apps Enterprise 現在提供強大的託管環境預覽,每個服務例項最多可容納 1000 個應用程式例項,為企業提供其工作負載所需的可伸縮性。藉助每個服務例項最多 8000 個虛擬 CPU 和 32 TB 記憶體的支援,Azure Spring Apps Enterprise 使組織能夠有效且高效地滿足苛刻的計算和記憶體需求。當然,您可以在一個區域或多個區域中配置任意數量的服務例項。

更大的應用例項:此外,Azure Spring Apps Enterprise 透過支援 更大的應用例項,為使用者提供增強的價值,每個應用例項最多支援 8 個虛擬 CPU (vCPU) 和 32 GB 記憶體。增加的容量使使用者能夠部署需要更多計算能力和記憶體的資源密集型應用程式,從而使他們能夠有效地滿足其工作負載的需求。

高效的構建流程:為了實現更高效、更快速的應用程式構建流程,尤其是對於複雜和資源密集型的應用程式,Azure Spring Apps Enterprise 已將構建代理池的資源分配增加到 最多 64 個 vCPU 和 128 GB 記憶體。擁有充足的資源,您就可以在高度高效和資源豐富的環境中構建任何應用程式,確保更順暢、更快的編譯過程。

更快的啟動時間和最佳化的記憶體使用

*Java 原生映像支援:Azure Spring Apps Enterprise 現在提供預覽功能,支援 Java 原生映像,可提供更快的啟動時間和最佳化的記憶體使用。*

GraalVM Native Image 功能允許您將 Java 應用程式編譯成獨立的、可執行的程式,稱為原生映像。這些可執行檔案可以提供顯著的好處,包括比傳統的 JVM (Java Virtual Machine) 更快的啟動時間和更低的執行時記憶體開銷。您可以使用 Cloud Native Buildpack for Java Native Image 部署 Spring Boot 原生映像應用程式

在下面的圖 2 中,展示了原生映像部署的最佳化記憶體使用情況 — 消耗的記憶體約是其等效 JAR 部署的 1/5 — 對於持續每秒 400 個請求的 Petclinic 應用程式的單體版本

GraalVM 由於底層過程的複雜性,需要大量資源來構建 Java 原生映像。生成原生映像所涉及的編譯和最佳化步驟需要大量的計算能力和記憶體。

在 Azure Spring Apps Enterprise 中,您可以利用優勢,為構建代理池分配高達 64 個 vCPU 和 128 GB 記憶體。擁有充足的資源,您就可以在高度高效和資源豐富的環境中構建您的 Java 原生映像。

圖 2 - 展示了原生映像部署的最佳化記憶體使用情況 — 消耗的記憶體約是其等效 JAR 部署的 1/5 — 對於持續每秒 400 個請求的 Petclinic 應用程式單體版本的記憶體使用情況。

自帶 Azure Container Registry — 跨環境無縫部署

*自帶 ACR:Azure Spring Apps Enterprise 現在提供自帶 Azure Container Registry (ACR) 的靈活性,促進跨不同環境的無縫應用程式部署。*

藉助 Azure Spring Apps Enterprise,使用者可以使用 “自帶 Azure Container Registry (ACR)” 功能。此功能允許使用者儲存 Tanzu Build Service 在 Azure Spring Apps Enterprise 環境中構建的容器映像,從而促進同一映像在各種環境、區域、本地測試機器、本地部署以及更多場景下的無縫部署。到目前為止,Azure Spring Apps Enterprise 服務例項一直管理著一個由 Tanzu Build Service 構建的容器映像的 Azure Container Registry 服務例項,該登錄檔捆綁在服務例項中。但從現在開始,使用者可以在使用服務例項管理的 Azure Container Registry 或選擇自帶 Azure Container Registry 之間進行選擇。此增強功能為部署流程提供了更大的靈活性和一致性,簡化了跨多個環境的管理,並促進了跨不同平臺的有效應用程式分發。

連續性保障 — Spring Boot 2.x.x 支援延長至 2025 年 2 月

延長 Spring Boot 支援:Azure Spring Apps Enterprise 為您提供 VMware Spring Runtime 支援,其中包括對 Spring Boot 2.x.x 的支援,直至 2025 年 2 月,為客戶提供更多應用程序升級時間。

許多企業和開發者可能不知道,Spring 框架和 Spring Boot 舊版本的開源支援將於 2023 年 11 月結束。這一發展可能會使沒有商業支援合同的組織在訪問補丁或安全更新方面陷入困境。因此,公司可能會面臨增加的安全、合規和法律風險。

Azure Spring Apps Enterprise 為這些開發者和麵臨升級 Spring 應用複雜任務的客戶提供了寶貴的優勢。Spring Boot 2.x.x 的開源社群支援將於 2023 年 11 月 18 日* 結束。鑑於需要處理 多項升級任務,例如遷移到 Java 17、採用最新的 Spring Boot 版本、處理 Spring Boot 2.x.x 中的棄用程式碼,以及確保與 Jakarta EE 9 的相容性,開發者需要充足的時間和支援。Azure Spring Apps Enterprise 使用者透過 VMware Spring Runtime 支援,有權獲得對 Spring 應用程式的商業支援。透過提供延長至 2025 年 2 月的 Spring Boot 2.x.x 商業支援,Azure Spring Apps Enterprise 為開發者和客戶提供了獨特的緩衝,使他們有足夠的時間成功升級應用程式,同時減輕了因升級延遲而帶來的風險,正如許多資料洩露及其造成的昂貴後果所例證的那樣。

*圖 3 — Spring Boot 的商業支援時間表*

* 您可以在 https://springframework.tw/ 找到 Spring 專案的當前支援時間表。

立即體驗 Azure Spring Apps Enterprise!

Azure Spring Apps Enterprise 帶來簡潔性和高生產力,您可以藉助 Spring 專家來讓您的專案更加成功。您可以輕鬆地將您的 Spring 和 Polyglot 應用程式部署到雲端,並迅速投入執行。它是一條通往生產的黃金路徑,它簡化了部署過程並優化了您的資源使用。

最好的部分是什麼?我們為所有層級提供免費月度額度 — 每層 50 個 vCPU 小時和 100 GB 小時。這是您在任何使用量計費之前獲得的免費小時數,讓您有機會在沒有任何財務費用的情況下測試該服務。

那麼,還在等什麼?利用我們的免費月度額度,今天就在 Azure Spring Apps Enterprise 上部署您的第一個 Spring 應用

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有