SpringCloud之Config 分布式配置文件中心

前言

為什么要使用分布式配置中心

1.在微服務(wù)如果使用傳統(tǒng)方式管理配置文件,配置文件管理非常復(fù)雜。

  1. 如果生產(chǎn)環(huán)境配置文件,可能需要發(fā)生改變的時(shí)候,重新打開war,重讀取配置信息在jvm內(nèi)存中

什么是分布式配置中心

  1. 在微服務(wù)當(dāng)中使用同一個(gè)服務(wù)器管理所有配置文件信息,能夠?qū)崿F(xiàn)后臺(tái)可管理,當(dāng)服務(wù)器正在運(yùn)行的時(shí)候,如果配置文件發(fā)生改變,可以實(shí)現(xiàn)不需要重啟服務(wù)器實(shí)時(shí)更改配置文件信息。


    圖一

分布試配置中心框架

阿波羅 線程寫分布式配置中心 有圖形界面可管理配置文件信息
SpringCloud Config 沒(méi)有后臺(tái)可管理分布配置中心,配置文件信息存放在版本控制器里(git|svn)
在使用Zookeeper 實(shí)現(xiàn)分布式配置中心,持久節(jié)點(diǎn)+事件通知
熱部署 其實(shí)底層還是會(huì)重啟服務(wù)器 不適合于生產(chǎn)環(huán)境 只適合于本地開發(fā)測(cè)試 `

SpringCloud Config 分布式配置中心原理

首先分析 分布試配置中心需要哪些組件

1.web管理系統(tǒng)~~~后臺(tái)可以使用圖形化界面管理配置文件 。SpringCloud Config沒(méi)有圖像化管理配置文件存放分布式配置文件服務(wù)器~~~使用版本控制器存放配置文件信息 使用git環(huán)境
2.ConfigServer緩存配置文件服務(wù)器(臨時(shí)緩存存放)~~~
3.ConfigClient讀取configService配置文件信息
搭建git環(huán)境的目的 :持久化存儲(chǔ)配置文件信息 采用碼云
git環(huán)境上文件夾以項(xiàng)目進(jìn)行區(qū)分
member_config 會(huì)員服務(wù)配置文件
order_config 訂單服務(wù)配置文件
2.公司項(xiàng)目中環(huán)境是如何區(qū)分

  • dev 開發(fā)環(huán)境
  • sit 測(cè)試環(huán)境
  • per 預(yù)發(fā)布環(huán)境
  • prd 準(zhǔn)生產(chǎn)環(huán)境
  • 演練兩個(gè)sit環(huán)境和pd環(huán)境
    3.在git環(huán)境上如何存放配置文件

在git環(huán)境上創(chuàng)建配置文件命名規(guī)范

  1. 會(huì)員服務(wù)~~~ 服務(wù)器名稱~~~.properties
    2.服務(wù) 名稱 環(huán)境.properties
    3.member-dev.properties

1默認(rèn)情況下不能及時(shí)獲取實(shí)時(shí)變更的配置文件信息
2 SpringCloud 分布式配置中心 可以采用手動(dòng)刷新或者自動(dòng)刷新
手動(dòng)刷新 ~~~需要人工調(diào)用接口 讀取最新的配置文件(監(jiān)控中心)
自己刷新 ~~~ 消息總線進(jìn)行實(shí)時(shí)通知 ~~~springbus
手動(dòng)屬性和自己刷新都不需要重啟服務(wù)器
@RefreshScope 自動(dòng)刷新注解

在公司當(dāng)中,不建議使用自動(dòng)刷新功能,因?yàn)閷?duì)性能不是很好
建議大家每次在修改完配置文件之后,人工調(diào)用/actuator/refresh進(jìn)行刷新。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容