真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

微服務(wù)架構(gòu)的配置中心有什么作用

本篇內(nèi)容介紹了“微服務(wù)架構(gòu)的配置中心有什么作用”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

目前成都創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、穆棱網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

一、為什么需要「配置中心」?

我們先來看看在沒有「配置中心」的傳統(tǒng)項(xiàng)目中,我們是怎么處理各類配置參數(shù)問題的:

  1. 一般是靜態(tài)化配置。大多數(shù)在項(xiàng)目中單獨(dú)寫一個(gè)配置文件,例如 "config.conf",然后將各類 參數(shù)配置、應(yīng)用配置、環(huán)境配置、安全配置、業(yè)務(wù)配置 都寫到這個(gè)文件里。當(dāng)項(xiàng)目代碼邏輯中需要使用配置的時(shí)候,就從這個(gè)配置文件中讀取。這種做法雖然簡單,但如果參數(shù)需要修改,就非常的不靈活,甚至需要重啟運(yùn)行中的項(xiàng)目才能生效。相信大多數(shù)開發(fā)同學(xué)都深有體會(huì)。

  2. 配置文件無法區(qū)分環(huán)境。由于配置文件是放在項(xiàng)目中的,但是我們項(xiàng)目可能會(huì)有多個(gè)環(huán)境,例如:測試環(huán)境、預(yù)發(fā)布環(huán)境、生產(chǎn)環(huán)境。每一個(gè)環(huán)境所使用的配置參數(shù)理論上都是不同的,所以我們在配置文件中根據(jù)不同環(huán)境配置不同的參數(shù),這些都是手動(dòng)維護(hù),在項(xiàng)目發(fā)布的時(shí)候,極其容易因開發(fā)人員的失誤導(dǎo)致出錯(cuò)。

  3. 配置文件過于分散。如果一個(gè)項(xiàng)目中存在多個(gè)邏輯模塊獨(dú)立部署,每個(gè)模塊所使用的配置內(nèi)容又不相同,傳統(tǒng)的做法是會(huì)在每一個(gè)模塊中都放一個(gè)配置文件,甚至不同模塊的配置文件格式還不一樣。那么長期的結(jié)果就是配置文件過于分散混亂,難以管理。

  4. 配置修改無法追溯。因?yàn)椴捎玫撵o態(tài)配置文件方式,所以當(dāng)配置進(jìn)行修改之后,不容易形成記錄,更無法追溯是誰修改的、修改時(shí)間是什么、修改前是什么內(nèi)容。既然無法追溯,那么當(dāng)配置出錯(cuò)時(shí),更沒辦法回滾配置了。

上面只是拿配置文件的形式來舉例,有的項(xiàng)目會(huì)采用數(shù)據(jù)庫配置,雖然靈活一點(diǎn),但是依舊不能完全解決上述問題。既然傳統(tǒng)的項(xiàng)目配置有這么多弊端,那我們看看「配置中心」的方案是如何解決這些痛點(diǎn)的:

「配置中心」的思路就是把項(xiàng)目中各種配置、各種參數(shù)、各種開關(guān),全部都放到一個(gè)集中的地方進(jìn)行統(tǒng)一管理,并提供一套標(biāo)準(zhǔn)的接口。當(dāng)各個(gè)服務(wù)需要獲取配置的時(shí)候,就來「配置中心」的接口拉取。當(dāng)「配置中心」中的各種參數(shù)有更新的時(shí)候,也能通知到各個(gè)服務(wù)實(shí)時(shí)的過來同步最新的信息,使之動(dòng)態(tài)更新。

那么,按照上述思路,我們理想中的「配置中心」應(yīng)該具備如下特點(diǎn):

  • 配置集中管理、統(tǒng)一標(biāo)準(zhǔn)

  • 配置與應(yīng)用分離

  • 實(shí)時(shí)更新

  • 高可用

具有上述特性的「配置中心」是如何解決上面?zhèn)鹘y(tǒng)配置所面臨的問題的呢?

  1. 采用“配置集中管理”,可以很好的解決傳統(tǒng)的“配置文件過于分散”的問題。所有的配置都集中在配置中心這一個(gè)地方管理,不需要每一個(gè)項(xiàng)目都自帶一個(gè),這樣極大的減輕了開發(fā)成本。

  2. 采用“配置與應(yīng)用分離”,可以很好的解決傳統(tǒng)的“配置文件無法區(qū)分環(huán)境”的問題,配置并不跟著環(huán)境走,當(dāng)不同環(huán)境有不同需求的時(shí)候,就到配置中心獲取即可,極大的減輕了運(yùn)維部署成本。

  3. 具備“實(shí)時(shí)更新”的功能,就是用來解決傳統(tǒng)的“靜態(tài)化配置”的問題。線上系統(tǒng)需要調(diào)整參數(shù)的時(shí)候,只需要在配置中心動(dòng)態(tài)修改即可。

  4. 既然配置都統(tǒng)一管理了,那配置中心在整個(gè)系統(tǒng)中的地位就非常重要了,一旦配置中心不能正常提供服務(wù),就可能會(huì)導(dǎo)致項(xiàng)目整體故障,因此“高可用”就是配置中心又一個(gè)很關(guān)鍵的指標(biāo)了。

 
二、「配置中心」的原理與應(yīng)用?

通過上面的介紹,其實(shí)就可以了解到「 配置中心 」的原理不是很復(fù)雜。其核心功能也不多,主要是:

  1. 實(shí)現(xiàn)配置的記錄

  2. 實(shí)現(xiàn)配置的讀取、更新、取消

  3. 實(shí)現(xiàn)配置的查看

但是圍繞著這幾個(gè)核心功能,我們還需要保障高可行、要實(shí)現(xiàn)實(shí)時(shí)更新、要能方便的使用,還希望有權(quán)限管理的功能、操作審計(jì)的功能等等,加上這些周邊輔助功能之后,一個(gè)完善的「 配置中心 也就不那么簡單了。

我們再來看一下在實(shí)際項(xiàng)目中如何去選型和應(yīng)用:

雖然配置中心的核心原理并不復(fù)雜,我們可以根據(jù)原理自己去實(shí)現(xiàn)一個(gè)配置中心,但是如果沒有特殊需求,還是不建議重復(fù)造輪子了,畢竟業(yè)內(nèi)已經(jīng)有很多成熟的開源方案可以直接選用了。下面就列舉幾個(gè)比較熱門的配置中心開源組件給大家參考:

  • Apollo

    Apollo是由攜程開源的分布式配置中心。

    Apollo的特點(diǎn)有很多,比如:配置更新之后可以實(shí)時(shí)生效,還可以支持灰度發(fā)布功能。并且能對所有的配置進(jìn)行版本管理、操作審計(jì)等功能,提供開放平臺(tái)API。另外由于Apollo使用的人很多,所以網(wǎng)上的資料也非常的豐富,并且github上資料也寫的很詳細(xì)。

    微服務(wù)架構(gòu)的配置中心有什么作用

  • 上面即是Apollo的基礎(chǔ)模型,看結(jié)構(gòu)很簡單。但是其功能很多,之前說過配置中心對高可用的要求很高。下面可以繼續(xù)看一下Apollo的架構(gòu):

    微服務(wù)架構(gòu)的配置中心有什么作用

  • Spring Cloud Config包含了Config Client和Config Server兩部分,Config Server 實(shí)現(xiàn)配置文件的存儲(chǔ),對外以接口的形式提供獲取配置文件,然后Config  Client通過這些接口獲取數(shù)據(jù)。

  • Disconf

    Disconf是由百度開源的分布式配置中心。其實(shí)很多一線大廠都有開源自己的配置中心組件,這里挑出百度的Disconf也是因?yàn)榫W(wǎng)上比較火熱,易用性也還不錯(cuò),項(xiàng)目也是托管在github上很容易找到。它是基于Zookeeper來實(shí)現(xiàn)配置變更后實(shí)時(shí)通知和生效的。

“微服務(wù)架構(gòu)的配置中心有什么作用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


分享標(biāo)題:微服務(wù)架構(gòu)的配置中心有什么作用
標(biāo)題路徑:http://weahome.cn/article/jhgeio.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部