Springcloud中的Nacos?Config服務(wù)配置流程分析
簡(jiǎn)介
前邊寫過(guò)幾個(gè)微服務(wù),訂單微服務(wù),商品微服務(wù),賬戶微服務(wù),庫(kù)存微服務(wù),每個(gè)微服務(wù)都去配置自己的配置文件,每個(gè)微服務(wù)一個(gè)yml配置文件,這樣如果微服務(wù)足夠多,對(duì)于配置文件的管理就很麻煩,如果配置文件變動(dòng)需要更改,則需要我們一個(gè)一個(gè)的去改。例如開(kāi)發(fā)環(huán)境,測(cè)試環(huán)境,生產(chǎn)環(huán)境等等,而且配置文件無(wú)法實(shí)時(shí)更新。我們修改了配置文件之后,必須重新啟動(dòng)微服務(wù)才能使配置生效。配置中心就可以解決配置問(wèn)題。
配置中心流程:
首先把項(xiàng)目中各種配置全部都放到一個(gè)集中的地方進(jìn)行統(tǒng)一管理,并提供一套標(biāo)準(zhǔn)的接口。
當(dāng)各個(gè)服務(wù)需要獲取配置的時(shí)候,就來(lái)配置中心的接口拉取自己的配置。
當(dāng)配置中心中的各種參數(shù)有更新的時(shí)候,也能通知到各個(gè)服務(wù)實(shí)時(shí)的過(guò)來(lái)同步最新的信息,使之動(dòng)態(tài)更新。
nacos config快速開(kāi)始
以用戶微服務(wù)為例,進(jìn)行統(tǒng)一的配置。
依賴引入
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2.1.0.RELEASE</version> </dependency>
配置nacos config
現(xiàn)在需要將原來(lái)的application.yml配置在nacos的服務(wù)配置 管理中進(jìn)行,而原本微服務(wù)需要新建一個(gè)bootstrap.yml作為配置文件。配置文件的優(yōu)先級(jí):bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml
spring: application: name: springcloud-user cloud: nacos: config: server-addr: 192.168.5.130:8848 #nacos中心地址i file-extension: yaml # 配置文件格式 profiles: active: dev # 環(huán)境標(biāo)識(shí)
nacos服務(wù)中心配置
新建配置
注意:dataid配置需要application.name+dev.yaml
對(duì)應(yīng)的數(shù)據(jù)庫(kù)表:
啟動(dòng)測(cè)試
注釋本地的application.yam中的內(nèi)容, 啟動(dòng)程序進(jìn)行測(cè)試
如果依舊可以成功訪問(wèn)程序,說(shuō)明我們nacos的配置中心功能已經(jīng)實(shí)現(xiàn)
配置動(dòng)態(tài)更新配置
配置中心配置動(dòng)態(tài)的屬性,在代碼里邊進(jìn)行獲取。
config: appName: user
代碼里邊獲?。?/p>
@RestController @RefreshScope /* 只需要在需要?jiǎng)討B(tài)讀取配置的類上添加此注解就可以 */ public class NacosConfigController { @Value( "${config.appName}" ) private String appName; /* 2 注解方式 */ @GetMapping( "/nacos-config" ) public String nacosConfing() { return(appName); } }
改配置
這里就不進(jìn)行講解所有微服務(wù)的配置了。
到此這篇關(guān)于Springcloud中的Nacos Config服務(wù)配置的文章就介紹到這了,更多相關(guān)Springcloud Nacos服務(wù)配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java結(jié)構(gòu)型設(shè)計(jì)模式之適配器模式詳解
適配器模式,即將某個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口的表示,主要目的是實(shí)現(xiàn)兼容性,讓原本因?yàn)榻涌诓黄ヅ?,沒(méi)辦法一起工作的兩個(gè)類,可以協(xié)同工作。本文將通過(guò)示例詳細(xì)介紹適配器模式,需要的可以參考一下2022-09-09jdk8使用stream實(shí)現(xiàn)兩個(gè)list集合合并成一個(gè)(對(duì)象屬性的合并)
本文主要介紹了jdk8使用stream實(shí)現(xiàn)兩個(gè)list集合合并成一個(gè)(對(duì)象屬性的合并),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01配置IDEA中java項(xiàng)目配置swagger全過(guò)程
這篇文章主要介紹了配置IDEA中java項(xiàng)目配置swagger全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05springboot結(jié)合mybatis-plus快速生成項(xiàng)目模板的方法
Mybatis-Plus是一個(gè) Mybatis 的增強(qiáng)工具,在 Mybatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生,接下來(lái)通過(guò)本文給大家分享springboot結(jié)合mybatis-plus快速生成項(xiàng)目模板的方法,感興趣的朋友一起看看吧2021-06-06java讀取resources文件詳解及實(shí)現(xiàn)代碼
這篇文章主要介紹了java讀取resources文件詳解及實(shí)現(xiàn)代碼的相關(guān)資料,在開(kāi)發(fā)項(xiàng)目的時(shí)候經(jīng)常會(huì)遇到讀取文件夾里面的內(nèi)容,需要的朋友可以參考下2017-07-07java 實(shí)現(xiàn)讀取txt文本數(shù)據(jù)并以數(shù)組形式一行一行取值
今天小編就為大家分享一篇java 實(shí)現(xiàn)讀取txt文本數(shù)據(jù)并以數(shù)組形式一行一行取值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07java動(dòng)態(tài)線程池的簡(jiǎn)單實(shí)現(xiàn)思路
本文主要介紹了java?動(dòng)態(tài)線程池的簡(jiǎn)單實(shí)現(xiàn)思路,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06通過(guò)實(shí)例解析Java類初始化和實(shí)例初始化
這篇文章主要介紹了通過(guò)實(shí)例解析Java類初始化和實(shí)例初始化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11