從Nacos配置中心獲取配置并實現多環(huán)境

從Nacos配置中心獲取配置并實現多環(huán)境

微服務的配置很多是公用的雹熬,所以可以抽取公用的配置到nacos中。主要分幾步:在配置中心添加相關的配置文件姑尺、添加依賴灸眼、添加配置

Nacos配置支持運行時自動刷新應用中的配置,并且是全量的

配置過程

  1. 在配置中心添加配置

    登錄nacos中心克懊。在public命名空間下添加common.yml忱辅。這里注意F咧!dataId必須是加上配置后綴的

    比如:

    person:
      name: alan
    
  2. 添加maven依賴

    這里墙懂,我找了幾個網上的都是寫錯的橡卤,搞的我下不來依賴,一直不知道是什么回事损搬,所以要注意了

    說明:

    1. 添加了maven依賴碧库,在不配置參數下,則默認加載namespace為public巧勤,group為DEFAULT_GROUP嵌灰、[applicationName].yml【具體根據配置的拓展名加載】、[applicationName]-[env].yml【具體根據配置的拓展名加載】颅悉。

      比如:應用名為:serviceA沽瞭,環(huán)境:dev,則在引導啟動時加載:serviceA.yml剩瓶,serviceA-dev.yml驹溃。

    2. nacos-config的配置必須寫在bootstrap.yml中,因為bootstrap.yml是引導啟動儒搭,在加載application.yml前加載了吠架。

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        <version>2.1.0.RELEASE</version>
    </dependency>
    
  3. 在應用的bootstrap.yml中添加配置

    spring:
      profiles: dev
      cloud:
        nacos:
          config:
            server-addr: 192.168.1.1:8848
            file-extension: yaml
            shared-dataids: common.yml #這里支持多個配置使用,分割。比如:a.yml,b.yml
            refreshable-dataids: common.yml #自動刷新的配置搂鲫。這里支持多個配置使用,分割。比如:a.yml,b.yml
    
  4. 驗證磺平。

    啟動應用魂仍,就會發(fā)現啟動日志把nacos加載的配置名稱:serviceA.yml,serviceA-dev.yml拣挪、common.yml都打印了日志擦酌,并且把配置內容都打印出來。

多環(huán)境方案

網上其他博主都說了很多并且很全面的方案菠劝,但是感覺不適合我赊舶。我主要想要實現下面的東西。

  1. 在nacos有一個所有微服務復用的配置
  2. 可以在一個文件里面指定多環(huán)境

網上說多環(huán)境可以使用namespace赶诊、groupId實現笼平,或者使用dataId后綴也是可以的。下面說下我的方案:

  1. 在bootstrap.yml添加多環(huán)境配置舔痪,多環(huán)境又bootstrap決定寓调,因為不同環(huán)境的nacos是不一樣的,所以在nacos指定多環(huán)境就沒有意義了

    比如:

    ---
    spring:
      profiles: dev
      cloud:
        nacos:
          config:
            server-addr: 192.168.8.127:8848
            file-extension: yaml
            shared-dataids: common.yml
            refreshable-dataids: common.yml
    ---
    spring:
      profiles: test
      cloud:
        nacos:
          config:
            server-addr: 192.168.8.127:8848
            file-extension: yaml
            shared-dataids: common.yml
            refreshable-dataids: common.yml
    ---
    spring:
      profiles: prod
      cloud:
        nacos:
          config:
            server-addr: 192.168.8.127:8848
            file-extension: yaml
            shared-dataids: common.yml
            refreshable-dataids: common.yml
    
    

一些記錄

  • nacos自動刷新配置是全量刷新的锄码。但是一些鏈接信息是沒辦法刷新的(redis夺英、mysql)晌涕。

  • nacos不支持單文件多環(huán)境的配置,他會合并這些配置痛悯,并且讀取最后一個余黎。比如下面文件結構

    ---
    spring:
      profiles: dev
    person:
      name: dev
    ---
    spring:
      profiles: test
    person:
      name: test
    ---
    spring:
      profiles: prod
    person:
      name: prod
    

    拆分了多環(huán)境,但是在應用加載進來的時候载萌,貌似會合并驯耻,我也驗證了,確實會炒考,并且會使用最后一個配置可缚,也就是使用prod環(huán)境的配置

  • 如果spring-cloud-starter-alibaba-nacos-config依賴包一直沒辦法下載下來斋枢,請確認一下pom依賴是否寫對了帘靡。再不行就到maven倉庫找,比如阿里云的倉庫:https://maven.aliyun.com/mvn/search瓤帚,在這里你可以搜索包確認是否存在描姚,順便校驗包名又沒寫錯

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市戈次,隨后出現的幾起案子轩勘,更是在濱河造成了極大的恐慌,老刑警劉巖怯邪,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绊寻,死亡現場離奇詭異,居然都是意外死亡悬秉,警方通過查閱死者的電腦和手機澄步,發(fā)現死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來和泌,“玉大人村缸,你說我怎么就攤上這事∥涿ィ” “怎么了梯皿?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長县恕。 經常有香客問我东羹,道長,這世上最難降的妖魔是什么弱睦? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任百姓,我火速辦了婚禮,結果婚禮上况木,老公的妹妹穿的比我還像新娘垒拢。我一直安慰自己旬迹,他們只是感情好,可當我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布求类。 她就那樣靜靜地躺著奔垦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪尸疆。 梳的紋絲不亂的頭發(fā)上椿猎,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天,我揣著相機與錄音寿弱,去河邊找鬼犯眠。 笑死,一個胖子當著我的面吹牛症革,可吹牛的內容都是我干的筐咧。 我是一名探鬼主播,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼噪矛,長吁一口氣:“原來是場噩夢啊……” “哼量蕊!你這毒婦竟也來了?” 一聲冷哼從身側響起艇挨,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤残炮,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后缩滨,有當地人在樹林里發(fā)現了一具尸體势就,經...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年楷怒,在試婚紗的時候發(fā)現自己被綠了蛋勺。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡鸠删,死狀恐怖,靈堂內的尸體忽然破棺而出贼陶,到底是詐尸還是另有隱情刃泡,我是刑警寧澤,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布碉怔,位于F島的核電站烘贴,受9級特大地震影響,放射性物質發(fā)生泄漏撮胧。R本人自食惡果不足惜桨踪,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望芹啥。 院中可真熱鬧锻离,春花似錦铺峭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至虱朵,卻和暖如春莉炉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背碴犬。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工絮宁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人服协。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓绍昂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蚯涮。 傳聞我的和親對象是個殘疾皇子治专,可洞房花燭夜當晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內容