詳解Spring Cloud Config采用Git存儲(chǔ)時(shí)兩種常用的配置策略
由于Spring Cloud Config默認(rèn)采用了Git存儲(chǔ),相信很多團(tuán)隊(duì)在使用Spring Cloud的配置中心時(shí)也會(huì)采用這樣的策略。即便大家都使用了Git存儲(chǔ),可能還有各種不同的配置方式,本文就來(lái)介紹一下兩種常用的配置策略。
第一種:多個(gè)項(xiàng)目公用一個(gè)Git倉(cāng)庫(kù),用不同的目錄區(qū)分項(xiàng)目
主要的配置項(xiàng)如下:
spring.cloud.config.server.git.uri=https://github.com/dyc87112/config-repo.git
spring.cloud.config.server.git.search-paths=/{application}
這種模式下不同的項(xiàng)目會(huì)對(duì)應(yīng)到https://github.com/dyc87112/config-repo.git倉(cāng)庫(kù)下的不同目錄,如果項(xiàng)目中spring.application.name=user-service,那么它的配置倉(cāng)庫(kù)會(huì)定位到https://github.com/dyc87112/config-repo.git倉(cāng)庫(kù)下的/user-service目錄。配置文件按application-{profile}.properties的格式存儲(chǔ), {profile}代表環(huán)境名。
優(yōu)缺點(diǎn)分析:因?yàn)橹皇褂靡粋€(gè)Git庫(kù)存儲(chǔ),所以當(dāng)配置是由專人統(tǒng)一維護(hù)的時(shí)候比較方便。但是如果要做DevOps的話,權(quán)限控制上將變的非常的弱。
第二種:多個(gè)項(xiàng)目使用多個(gè)不同Git倉(cāng)庫(kù)
主要的配置項(xiàng)如下:
spring.cloud.config.server.git.uri=https://github.com/dyc87112/{application}.git
這種模式下不同的項(xiàng)目會(huì)對(duì)應(yīng)的不同的Git倉(cāng)庫(kù),如果項(xiàng)目中spring.application.name=user-service,那么它的配置倉(cāng)庫(kù)會(huì)定位到https://github.com/dyc87112/user-service.git倉(cāng)庫(kù)下的配置。配置文件按application-{profile}.properties的格式存儲(chǔ), {profile}代表環(huán)境名。
優(yōu)缺點(diǎn)分析:由于一個(gè)項(xiàng)目就有一個(gè)對(duì)應(yīng)的存儲(chǔ)配置的Git倉(cāng)庫(kù),所以這種模式對(duì)于DevOps的應(yīng)用支持較好,如果使用Gitlab作為Git服務(wù)端的話,還有不錯(cuò)的界面和權(quán)限管理來(lái)方便項(xiàng)目所屬者使用和維護(hù)。如果團(tuán)隊(duì)不是DevOps模式管理的話,專人管理就會(huì)遇到有N多Git倉(cāng)庫(kù)要維護(hù)的困境。
本文的主要介紹內(nèi)容就到這里,不知道您采用了哪種配置存儲(chǔ)策略呢?如果有更好的方案歡迎留言分享!最后,正式向大家介紹一下最近緊鑼密鼓開發(fā)和測(cè)試中的配置中心開源項(xiàng)目。該項(xiàng)目基于Spring Cloud Config構(gòu)建,旨在實(shí)現(xiàn)一套方便大家對(duì)配置管理的可視化工具,增強(qiáng)Spring Cloud Config的易用性,該項(xiàng)目即適用于目前已經(jīng)在使用spring cloud config的用戶,也適用于正在選型配置中心的用戶,小哥哥小姐姐們可以戳下面的鏈接了解一下,如果覺(jué)得不錯(cuò),歡迎轉(zhuǎn)發(fā)、Star支持!
Github: https://github.com/dyc87112/spring-cloud-config-admin
Gitee:https://gitee.com/didispace/spring-cloud-config-admin
P.S. 主要維護(hù)在Github,Gitee定期同步。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot結(jié)果封裝和異常攔截的實(shí)現(xiàn)示例
SpringBoot 項(xiàng)目中,我們通常需要將結(jié)果數(shù)據(jù)封裝成特定的格式,以方便客戶端進(jìn)行處理,本文主要介紹了SpringBoot?優(yōu)雅的結(jié)果封裝和異常攔截,感興趣的可以了解一下2023-08-08
Spring Boot環(huán)境屬性占位符解析及類型轉(zhuǎn)換詳解
這篇文章主要給大家介紹了關(guān)于Spring Boot環(huán)境屬性占位符解析及類型轉(zhuǎn)換的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08
Spring?Boot整合阿里開源中間件Canal實(shí)現(xiàn)數(shù)據(jù)增量同步
這篇文章主要為大家介紹了Spring?Boot整合阿里開源中間件Canal實(shí)現(xiàn)數(shù)據(jù)增量同步示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Java開發(fā)中synchronized的定義及用法詳解
這篇文章主要介紹了Java開發(fā)中synchronized的定義及用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
SpringCloud?Eureka應(yīng)用全面介紹
Eureka是Netflix開發(fā)的服務(wù)發(fā)現(xiàn)框架,本身是一個(gè)基于REST的服務(wù),主要用于定位運(yùn)行在AWS域中的中間層服務(wù),以達(dá)到負(fù)載均衡和中間層服務(wù)故障轉(zhuǎn)移的目的2022-09-09
Java動(dòng)態(tài)代理實(shí)現(xiàn)方法小結(jié)
這篇文章主要介紹了Java動(dòng)態(tài)代理實(shí)現(xiàn)方法,結(jié)合實(shí)例形式總結(jié)分析了java基于JDK、CGLIB及CGLIB實(shí)現(xiàn)動(dòng)態(tài)代理的相關(guān)操作技巧,需要的朋友可以參考下2019-02-02

