本文主要介紹如何在Spring Cloud應用中整合MSE Nacos配置中心,實現配置的統一管理和動態重新整理。
背景資訊
在微服務架構中,傳統的寫入程式碼或靜態設定檔的管理方式,會因為微服務執行個體眾多且跨多環境部署(如開發、測試、生產等),導致配置不一致、更新不及時等問題。引入配置中心可以有效地解決這些問題,實現配置資訊的集中儲存、統一管理和動態調整,確保不同環境和執行個體之間的配置隔離與同步,同時提高配置更新的靈活性和安全性。
前提條件
下載Maven並設定Maven環境變數。
已有Spring Cloud應用。如果您沒有合適的Spring Cloud應用,可以使用本樣本提供的demo:nacos-service-config.zip。
- 重要
如果您的應用與MSE Nacos不在同一地區或不在阿里雲伺服器上,在建立Nacos引擎時您需要選擇公網網路。
為確保您所搭建的應用可正常通過公網訪問MSE ,您需要配置白名單。具體操作,請參見設定白名單。
方案概覽
通過在Spring Cloud應用中整合MSE Nacos配置中心,前後兩次在MSE Nacos控制台發布配置參數useLocalCache=true、useLocalCache=false,並通過命令列終端請求應用中相關配置介面擷取useLocalCache值,根據兩次請求結果,協助您體驗MSE Nacos配置中心的動態重新整理功能。
建立並發布配置:通過控制台建立一個配置並發布。
整合MSE Nacos:通過簡單的程式碼範例搭建 Spring Cloud 應用,展示如何通過MSE Nacos配置中心來管理應用的配置。
驗證動態重新整理:通過在控制台編輯配置內容,動態變更服務的配置。
步驟一:建立並發布配置
登入MSE註冊配置中心管理主控台,並在頂部功能表列選擇地區。
單擊目標執行個體名稱。
在左側導覽列,選擇。
在配置列表上方選擇您建立的命名空間。
單擊建立配置,在建立配置面板中填寫如下配置資訊:
說明本文僅提供配置內容的樣本參考,您可以根據業務需要建立相關配置,關於配置參數的詳細說明,請參考建立配置。

配置完成後單擊發布,您可以在配置列表中找到建立的配置。
步驟二:整合MSE Nacos
(可選)若您尚未構建Spring Cloud應用,可以參照本樣本來協助您快速搭建一個簡單應用。
在Spring Cloud應用的pom.xml檔案中添加Nacos配置中心依賴:
說明Spring Cloud Alibaba、Spring Cloud和SpringBoot三者的版本需要匹配,您可以訪問Spring Cloud Alibaba官網查看版本發布說明,選擇適配您應用的版本,我們建議您升級至最新的2023.x版本。<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2021.0.4.0</version> </dependency>在Spring Cloud應用的設定檔中添加Nacos相關配置,配置內容如下:
重要當您在應用中需要配置指定的 namespace 時,填入的是命名空間ID。
# 您的Nacos伺服器的地址 spring.cloud.nacos.config.server-addr=mse-XXX.nacos-ans.mse.aliyuncs.com:8848 # 指定MSE Nacos命名空間, 當訪問public預設命名空間時設定為空白值或者不配置此項。 spring.cloud.nacos.config.namespace=24075300-XXXX-XXXX-XXXX-0c17aa9f744b # 匯入特定的設定檔 spring.config.import=nacos:mse-nacos-config-client.properties?group=DEFAULT_GROUP&refreshEnabled=true在執行個體列表頁面,可以查看MSE Nacos的外網訪問地址,格式為
mse.XX.nacos.mse.aliyuncs.com。
修改後,您需要通過
mvn clean package命令重新編譯打包。
步驟三:驗證動態重新整理
以下驗證操作是基於本文提供的Spring Cloud應用樣本和配置樣本進行的,如果您使用的是自己的Spring Cloud應用,或根據業務需要自訂MSE Nacos配置中心的配置,可參考如下步驟自行驗證配置的動態重新整理。
啟動Spring Cloud應用,執行啟動類中的main函數。
在命令列終端執行如下命令,擷取MSE Nacos配置中心的
useLocalCache配置,響應結果為true。# 根據您服務的ip和連接埠號碼進行修改 curl http://服務的ip:18083/getConfig在控制台上編輯該配置並重新發布,將配置內容修改為
useLocalCache=false。再次執行上述命令,此時返回內容為
false,說明應用無需重啟,即可從MSE Nacos中擷取到useLocalCache的最新資料。
相關文檔
如果您想從開源自建Nacos配置中心遷移到MSE Nacos配置中心,請參見自建Nacos配置中心遷移到MSE Nacos。
如果您想瞭解服務註冊發現功能,請參見在Spring Cloud應用中接入MSE Nacos作為服務註冊中心
如果您想實現流量網關和微服務網關功能合并,請參見建立MSE雲原生網關。
如果您想瞭解服務治理和流量防護,實現中介軟體與業務解耦相關的功能,請參見開通MSE微服務治理。
如果您想瞭解分布式協調解決方案,提升系統高可用能力,請參見分布式任務調度。