1. 程式人生 > 其它 >SpringCloud-Alibaba-Nacos配置中心

SpringCloud-Alibaba-Nacos配置中心

如何接入

在啟動示例進行演示之前,我們先了解一下 Spring Cloud 應用如何接入 Nacos Config。 注意 本章節只是為了便於您理解接入方式,本示例程式碼中已經完成接入工作,您無需再進行修改。

  1. 首先,修改 pom.xml 檔案,引入 Nacos Config Starter。

     <dependency>
         <groupId>com.alibaba.cloud</groupId>
         <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
     </dependency>
    
  2. 在應用的 /src/main/resources/bootstrap.properties 配置檔案中配置 Nacos Config 元資料

     spring.application.name=nacos-config-example
     spring.cloud.nacos.config.server-addr=127.0.0.1:8848
    
  3. 完成上述兩步後,應用會從 Nacos Config 中獲取相應的配置,並新增在 Spring Environment 的 PropertySources 中。這裡我們使用 @Value 註解來將對應的配置注入到 SampleController 的 userName 和 age 欄位,並新增 @RefreshScope 開啟動態重新整理功能

     @RefreshScope
     class SampleController {
    
     	@Value("${user.name}")
     	String userName;
    
     	@Value("${user.age}")
     	int age;
     }
    

啟動 Nacos Server 並新增配置

  1. 首先需要獲取 Nacos Server,支援直接下載和原始碼構建兩種方式。推薦使用最新版本 Nacos Server

    1. 直接下載:Nacos Server 下載頁
    2. 原始碼構建:進入 Nacos Github 專案頁面,將程式碼 git clone 到本地自行編譯打包,參考此文件
  2. 啟動 Server,進入下載到本地並解壓完成後的資料夾(使用原始碼構建的方式則進入編譯打包好的資料夾),再進去其相對資料夾 nacos/bin,並對照作業系統實際情況執行如下命令。

    詳情參考此文件

    1. Linux/Unix/Mac 作業系統,執行命令 sh startup.sh -m standalone
    2. Windows 作業系統,執行命令 cmd startup.cmd
  3. 在命令列執行如下命令,向 Nacos Server 中新增一條配置。

     curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos-config-example.properties&group=DEFAULT_GROUP&content=user.id=1%0Auser.name=james%0Auser.age=17"
    

    注:你也可以使用其他方式新增,遵循 HTTP API 規範即可,若您使用的 Nacos 版本自帶控制檯,建議直接使用控制檯進行配置

    新增的配置的詳情如下

     dataId 為 nacos-config-example.properties
     group 為 DEFAULT_GROUP
     
     內容如下
     
     user.id=1
     user.name=james
     user.age=17	
    

應用啟動

  1. 增加配置,在應用的 /src/main/resources/application.properties 中新增基本配置資訊

     server.port=18084
     management.endpoints.web.exposure.include=*
    
  2. 啟動應用,支援 IDE 直接啟動和編譯打包後啟動。

    1. IDE直接啟動:找到主類 Application,執行 main 方法啟動應用。
    2. 打包編譯後啟動:首先執行 mvn clean package 將工程編譯打包,然後執行 java -jar nacos-config-example.jar啟動應用。

驗證

驗證自動注入

在瀏覽器位址列輸入 http://127.0.0.1:18084/user,並點選調轉,可以看到成功從 Nacos Config Server 中獲取了資料。

驗證動態重新整理

  1. 執行如下命令,修改 Nacos Server 端的配置資料

     curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos-config-example.properties&group=DEFAULT_GROUP&content=user.id=1%0Auser.name=james%0Auser.age=18"
    
  2. 在瀏覽器位址列輸入 http://127.0.0.1:18084/user,並點選調轉,可以看到應用從 Nacos Server 中獲取了最新的資料,age 變成了 18。