溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

發(fā)布時間:2021-12-24 10:48:02 來源:億速云 閱讀:461 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要介紹了如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

Spring Boot 官網(wǎng)提供了一個快速啟動的頁面 https://start.spring.io/ 在該頁面填寫基本信息,會生成相應工程目錄,具體工程目錄如下

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

其中 DemoApplication 是我們主程序入口,application.properties 是工程的配置文件。整個 Spring Boot 工程采用 maven 管理依賴,諸多我們需要的依賴都會有相應的starter包。

  • 這里首先我們需要引入 Nacos config 的依賴包,在 pom.xml 中添加如下依賴:

<dependency>    <groupId>com.alibaba.boot</groupId>    <artifactId>nacos-config-spring-boot-starter</artifactId>    <version>${latest.version}</version></dependency>

”注意:版本 0.2.x.RELEASE 對應的是 Spring Boot 2.x 版本,版本 0.1.x.RELEASE 對應的是 Spring Boot 1.x 版本。”,根據(jù)我們工程 spring-boot-starter-parent 選擇相應的 release 版本。

  • 接下來在 application.properties 配置文件中添加上一篇文章中部署成功的 Nacos server 地址:


nacos.config.server-addr=127.0.0.1:8848
  • 下面在我們主程序入口處加上對應的注解,加載 dataId 為 demo 的配置源,并開啟自動更新,能夠實現(xiàn)配置的熱加載(autoRefreshed = true)。


如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

  • 在controller層通過 Nacos 的注解 @NacosValue 設置對應的屬性值

${NacosCacheConfig}

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

  • 啟動 DemoApplication 瀏覽器訪問 http://localhost:8080/demo-config/get , 可以看到瀏覽器返回的內容是


如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

  • 通過 Nacos 的 OpenAPI (https://nacos.io/zh-cn/docs/open-API.html) 向 Nacos server 發(fā)布我們需要修改的配置,dataId 為 demo,配置內容為: NacosCacheConfig=enable

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=demo&group=DEFAULT_GROUP&content=NacosCacheConifg=enable"
  • 再次訪問 http://localhost:8080/demo-config/get , 可以看到瀏覽器返回的內容是

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

而此時我們是沒有重啟服務的,可以驗證該配置為熱加載,可以做到不停服更新配置。同時,如果認為 OpenAPI調用比較麻煩,可以直接在控制臺編輯對應的配置,并點擊發(fā)布,其操作詳見下圖:

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

顯示控制臺已有的配置信息,我們直接編輯配置的 text 文本,點擊發(fā)布,系統(tǒng)會讓你再次確認,確認發(fā)布再刷新瀏覽器,能夠看到此時配置已經(jīng)更新。

如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何構建SpringBoot微服務并實現(xiàn)服務配置讀取和熱加載”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業(yè)資訊頻道,更多相關知識等著你來學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI