commons 工程
commons 工程 - POM 文件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- 三坐標(biāo) -->
<groupId>com.zwc</groupId>
<artifactId>springcloud-config-git-commons</artifactId>
<version>1.0</version>
<!-- 工程名稱(chēng)和描述 -->
<name>springcloud-config-git-commons</name>
<description>ZFX代理申請(qǐng)www.fx61.com/brokerlist/zfx.html公用工程</description>
<!-- 打包方式 -->
<packaging>jar</packaging>
<!-- 在 properties下聲明相應(yīng)的版本信息,然后在dependency下引用的時(shí)候用 ${} 就可以引入該版本jar包了 -->
<properties>
<!-- 編碼 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- jdk -->
<java.version>1.8</java.version>
<!-- SpringBoot -->
<platform-bom.version>Cairo-SR3</platform-bom.version>
<!-- SpringCloud -->
<spring-cloud-dependencies.version>Finchley.RELEASE</spring-cloud-dependencies.version>
</properties>
<!-- 加入依賴(lài) -->
<dependencies>
</dependencies>
<!-- 依賴(lài) jar 包版本管理的管理器 -->
<!-- 如果 dependencies 里的 dependency 自己沒(méi)有聲明 version 元素,那么 maven 就此處來(lái)找版本聲明。 -->
<!-- 如果有,就會(huì)繼承它;如果沒(méi)有就會(huì)報(bào)錯(cuò),告訴你沒(méi)有版本信息 -->
<!-- 優(yōu)先級(jí):如果 dependencies 里的 dependency 已經(jīng)聲明了版本信息,就不會(huì)生效此處的版本信息了 -->
<dependencyManagement>
<dependencies>
<!-- SpringBoot -->
<dependency>
<groupId>io.spring.platform</groupId>
<artifactId>platform-bom</artifactId>
<version>${platform-bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- SpringCloud -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud-dependencies.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<!-- 插件依賴(lài) -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
配置一些共用依賴(lài)
commons 工程 - 項(xiàng)目結(jié)構(gòu)
配置文件
? 創(chuàng)建一個(gè) Git 庫(kù),里面存放配置文件,文件夾名稱(chēng)為:config-repo;這里模擬不同的環(huán)境,所以分別構(gòu)建了
??dev(開(kāi)發(fā))、uat(測(cè)試)以及?online(線(xiàn)上)三種不同的配置文件;此文件夾存在此項(xiàng)目的根目錄中
}
添加?@EnableConfigServer 注解表示開(kāi)啟配置中心
實(shí)現(xiàn)原理
1、ConfigServer(配置中心服務(wù)端)從遠(yuǎn)端git拉取配置文件并在本地git一份,ConfigClient(微服務(wù))從ConfigServer端獲取自己對(duì)應(yīng) 配置文件;
2、當(dāng)遠(yuǎn)端git倉(cāng)庫(kù)配置文件發(fā)生改變,ConfigServer如何通知到ConfigClient端,即ConfigClient如何感知到配置發(fā)生更新?
Spring Cloud Bus會(huì)向外提供一個(gè)http接口,即圖中的/bus/refresh。我們將這個(gè)接口配置到遠(yuǎn)程的git的webhook上,當(dāng)git上的文件內(nèi)容發(fā)生變動(dòng)時(shí),就會(huì)自動(dòng)調(diào)用/bus-refresh接口。Bus就會(huì)通知config-server,config-server會(huì)發(fā)布更新消息到消息總線(xiàn)的消息隊(duì)列中,其他服務(wù)訂閱到該消息就會(huì)信息刷新,從而實(shí)現(xiàn)整個(gè)微服務(wù)進(jìn)行自動(dòng)刷新。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
本文名稱(chēng):SpringCloud之配置中心Config-創(chuàng)新互聯(lián)
路徑分享:http://jinyejixie.com/article22/eiecc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、品牌網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站維護(hù)、微信公眾號(hào)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容