範例應用程式簡介
注意
基本、標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告。
標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps。
本文適用於: ✔️ 基本/標準 ✔️ 企業
在本快速入門中,我們會使用已知的範例應用程式 PetClinic 來示範如何將應用程式部署至 Azure Spring Apps 服務。 寵物診所範例示範微服務架構模式,並醒目提示服務明細。 您會看到如何使用 Azure Spring Apps 功能將服務部署至 Azure,例如服務探索、設定伺服器、記錄、計量、分散式追蹤,以及開發人員友好的工具支援。
若要遵循 Azure Spring Apps 部署範例,您只需需要提供原始程式碼的位置。
下圖顯示 PetClinic 應用程式的架構。
注意
當應用程式裝載於 Azure Spring Apps 企業版方案中時,VMware Tanzu 的受控應用程式組態服務會擔任 Spring Cloud Config Server 的角色,而受控 VMware Tanzu 服務登錄會擔任 Eureka 服務探索的角色,而不需要對應用程式進行任何程式代碼變更。 如需詳細資訊,請參閱 本文稍後的 Azure Spring Apps 所裝載的基礎結構服務一節。
要部署的功能服務
PetClinic 可分解成四個核心 Spring 應用程式。 這些全都是由商務網域組織的獨立部署應用程式。
- 客戶服務:包含一般使用者輸入邏輯和驗證,包括寵物和擁有者資訊 (姓名、地址、城市、電話)。
- 造訪服務:儲存和顯示每個寵物評論的瀏覽資訊。
- 獸醫服務:儲存並顯示獸醫的資訊,包括名稱和專長領域。
- API 閘道:API 閘道是系統的單一進入點,用來處理要求並將其路由傳送至適當的服務,或叫用多個服務並彙總結果。 三個核心服務會將外部 API 公開給用戶端。 在真實世界的系統中,功能數目可能會因為系統複雜度而快速成長。 轉譯一個複雜的網頁可能牽涉到上百種服務。
Azure Spring Apps 所裝載的基礎結構服務
分散式系統中有數個通用模式能支援核心服務。 Azure Spring Apps 提供的工具能增強 Spring Boot 應用程式以實作下列模式:
- 設定服務:Azure Spring Apps 設定是適用於分散式系統且可水平擴縮的集中式設定服務。 所使用的可插式存放庫目前支援本機存放區、Git 和 Subversion。
- 服務探索:其允許自動偵測服務執行個體的網路位置 (可能會因為自動調整、失敗和升級而具有動態指派的位址)。
資料庫設定
在預設組態中, Pet Clinic 會使用記憶體內部資料庫 (HSQLDB),在啟動時填入數據。 如需持續性的資料庫設定,則會為 MySQL 提供類似的設定。 連接器/J 的相依性 MySQL JDBC 驅動程式已經包含在pom.xml檔案中。
PetClinic 的範例使用方式
如需完整的實作詳細資料,請參閱我們的 PetClinic 分支。 範例會視需要參考原始程式碼。