使用Springboot整合Apollo配置中心
Apollo簡(jiǎn)介
Apollo(阿波羅)是攜程框架部門(mén)研發(fā)的分布式配置中心,能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r(shí)推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性,適用于微服務(wù)配置管理場(chǎng)景。
官方網(wǎng)站 https://github.com/ctripcorp/apollo
Apollo 環(huán)境搭建
詳細(xì)步驟參見(jiàn): https://github.com/ctripcorp/apollo/wiki/Quick-Start
官網(wǎng)已經(jīng)很詳細(xì)的說(shuō)明了操作步驟。但是有很多前置條件才能完成安裝。
1、必須要有g(shù)it環(huán)境,才能下載Apollo代碼
yum –y install git
然后需要clone代碼。
2、安裝docker-compose環(huán)境
地址:https://github.com/docker/compose/releases
curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
測(cè)試結(jié)果
至此為止,就可以運(yùn)行文檔中的腳本了。
安裝完成之后,需要等待兩三分鐘就可以訪問(wèn)了。
輸入賬號(hào):apollo,密碼:admin
點(diǎn)擊創(chuàng)建項(xiàng)目
點(diǎn)擊新建配置
點(diǎn)擊發(fā)布
發(fā)布之后的配置才能生效
查看發(fā)布?xì)v史
整合SpringBoot項(xiàng)目
1、使用idea新建springboot項(xiàng)目
2、修改pom.xml
<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-client</artifactId> <version>1.1.0</version> </dependency> <dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-core</artifactId> <version>1.1.0</version> </dependency>
3、創(chuàng)建apollo配置文件
local.meta=http://192.168.75.50:8080 dev.meta=http://192.168.75.50:8080 fat.meta=${fat_meta} uat.meta=${uat_meta} lpt.meta=${lpt_meta} pro.meta=${pro_meta}
4、創(chuàng)建app.id配置文件,每一個(gè)應(yīng)用基本使用一個(gè)app.id
app.id=cyp_001
5、讀取apollo中的配置信息,防止配置沒(méi)有注入,一定要設(shè)置默認(rèn)值!
package com.chen.apolloconfig; import com.ctrip.framework.apollo.spring.annotation.EnableApolloConfig; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Configuration; @Configuration @EnableApolloConfig @SpringBootApplication public class ApolloConfigApplication { public static void main(String[] args) { SpringApplication.run(ApolloConfigApplication.class, args); } }
``` package com.chen.apolloconfig.controller; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class IndexController { @Value("${name:chenyongpeng}") private String name; @GetMapping("/getName") public String getMyName(){ return name; } } ``` 
總結(jié)
至此,springboot整合apollo配置中心已經(jīng)驗(yàn)證通過(guò)!
springcloud的配置中心是基于git或者gitte,gitlib等托管中心!
apollo是基于數(shù)據(jù)庫(kù)和本地緩存!
采坑之處
項(xiàng)目啟動(dòng)之后一直說(shuō)是找不到dev環(huán)境?。?!
此處需要在本機(jī)下新建環(huán)境配置!
env=DEV
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
eclipse中沒(méi)有SERVER的解決辦法(超詳細(xì))
使用eclipse進(jìn)行tomcat配置時(shí),經(jīng)常會(huì)發(fā)現(xiàn)一個(gè)重要的問(wèn)題就是打開(kāi)eclipse之后沒(méi)有了server選項(xiàng),所以本給大家詳細(xì)介紹了eclipse中沒(méi)有SERVER的解決辦法,文中有詳細(xì)的圖文講解,需要的朋友可以參考下2023-12-12完美解決java讀取大文件內(nèi)存溢出的問(wèn)題
下面小編就為大家?guī)?lái)一篇完美解決java讀取大文件內(nèi)存溢出的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08java連接mysql數(shù)據(jù)庫(kù)亂碼的解決方法
這篇文章主要介紹通過(guò)java連接mysql數(shù)據(jù)庫(kù)的時(shí)候,頁(yè)面出現(xiàn)亂碼,這里簡(jiǎn)單分享下解決方法, 需要的朋友可以參考下2013-05-05SpringBoot整合MybatisPlusGernerator實(shí)現(xiàn)逆向工程
在我們寫(xiě)項(xiàng)目的時(shí)候,我們時(shí)常會(huì)因?yàn)樾枰獎(jiǎng)?chuàng)建很多的項(xiàng)目結(jié)構(gòu)而頭疼,本文主要介紹了SpringBoot整合MybatisPlusGernerator實(shí)現(xiàn)逆向工程,具有一定的參考價(jià)值,感興趣的可以了解一下2024-05-05SpringSecurity-2.7中跨域問(wèn)題解析
這篇文章主要介紹了SpringSecurity-2.7中跨域問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-01-01Java LinkedHashMap 底層實(shí)現(xiàn)原理分析
LinkedHashMap繼承自HashMap實(shí)現(xiàn)了Map接口。基本實(shí)現(xiàn)同HashMap一樣,不同之處在于LinkedHashMap保證了迭代的有序性。其內(nèi)部維護(hù)了一個(gè)雙向鏈表,解決了 HashMap不能隨時(shí)保持遍歷順序和插入順序一致的問(wèn)題。2021-05-05springboot配置多數(shù)據(jù)源后mybatis攔截器失效的解決
這篇文章主要介紹了springboot配置多數(shù)據(jù)源后mybatis攔截器失效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09Java導(dǎo)出網(wǎng)頁(yè)表格Excel過(guò)程詳解
這篇文章主要介紹了Java導(dǎo)出網(wǎng)頁(yè)表格Excel過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07