摘要:概要什么是創建并運行一個建立一個創建并運行一個是什么什么是配置信息一個中不只是代碼還需要連接資源和其它應用經常有很多需要外部設置的項去調整行為如切換不同的數據庫國際化等應用中的會經常見到的等就是配置信息常見的實現信息配置的方法硬編碼缺點需要
概要
Spring Cloud Config是什么?什么是Spring Cloud Config?
創建并運行一個Spring Cloud Config Server
建立一個Repository
創建并運行一個Spring Cloud Config Client
什么是配置信息?
一個Application中不只是代碼,還需要連接資源和其它應用,經常有很多需要外部設置的項去調整Application行為,如切換不同的數據庫,i18n國際化 等.應用中的會經常見到的xml,properties,yaml等就是配置信息.
常見的實現信息配置的方法:
硬編碼(缺點:需要修改代碼,風險大)
放在xml等配置文件中,和應用一起打包(缺點:需要重新打包和重啟)
文件系統中(缺點:依賴操作系統等)
環境變量(缺點:有大量的配置需要人工設置到環境變量中,不便于管理,且依賴平臺)
云端存儲(缺點:與其他應用耦合)
Spring Cloud Config 就是云端存儲配置信息的,它具有中心化,版本控制,支持動態更新,平臺獨立,語言獨立等特性.
Spring Cloud Config的原理如圖所示,真正的數據存在Git等repository中,Config Server去獲取相應的信息,然后開發給Client Application,相互間的通信基于HTTP,TCP,UDP等協議.
1.創建一個名為my-config-server的應用,并添加spring-cloud-starter-parent,spring-cloud-config-server依賴,pom信息具體如下
4.0.0 org.springframework.cloud spring-cloud-starter-parent Brixton.SR4 org.mmb.cloud mmb-config-server 1.0-SNAPSHOT jar org.springframework.cloud spring-cloud-config-server
2.在Application主類上添加@EnableConfigServer注解,具體如下
package config; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.config.server.EnableConfigServer; /** * Created by mmb on 2016/7/30. */ @EnableConfigServer @SpringBootApplication public class MMBConfigServerApplication { public static void main(String[] args) { SpringApplication.run(MMBConfigServerApplication.class, args); } }
3.去自己的GitHub上創建一個repository命名=MMBConfigData,并創建一個mmb-config-client.yml的配置文件,并添加一個key為luck-word,value mmb,或者其它任何值.具體如下
--- lucky-word: mmb
4.回自己的工程,設置應用application.yml,配置spring.cloud.config.server.git.uri為"https://github.com/"YOUR-GITHUB-ID"/"YOUR-REPOSITORY-NAME"",并設置端口server.port為8001
server: port: 8001 spring: cloud: config: server: git: uri: https://github.com/mumubin/MMBConfigData searchPaths: data
5.啟動應用并打開地址http://localhost:8001/mmb-con...將會看到配置好的信息,我的如下
{ "name": "mmb-config-client", "profiles": [ "default" ], "label": "master", "version": "4d9240f45fecd34136f81683d44c2e144792af86", "propertySources": [ { "name": "https://github.com/mumubin/MMBConfigData/data/mmb-config-client.yml", "source": { "lucky-word": "mmb" } } ] }創建并運行一個Spring Cloud Config Client
1.創建一個名為my-config-client的應用,并添加spring-cloud-starter-parent,spring-cloud-starter-config,spring-boot-starter-web依賴,pom信息具體如下
4.0.0 org.springframework.boot spring-boot-starter-parent 1.3.5.RELEASE org.springframework.cloud spring-cloud-starter-parent Brixton.SR4 pom import org.springframework.cloud spring-cloud-starter-config org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-devtools true org.mmb.cloud mmb-config-client 1.0-SNAPSHOT
2.創建bootstrap.yml在resource下,并設置spring.application.name,spring.cloud.config.uri,server.port信息,具體如下
spring: application: name: mmb-config-client cloud: config: uri: http://localhost:8001 --- server: port: 8002
注意這里是bootstrap.yml而不是appliction.yml,因為bootstrap.yml會在應用啟動之前讀取,而spring.cloud.config.uri會影響應用啟動
3.創建一個Controller
@RestController public class LuckyWordController { @Value("${lucky-word}") String luckyWord; @RequestMapping("/lucky-word") public String showLuckyWord() { return "The lucky word is: " + luckyWord; } }
4.啟動Application,打開http://localhost:8002/lucky-word
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } }
The lucky word is: mmb
特別感謝 kennyk65
Spring Cloud 中文用戶組 31777218
Spring-Cloud-Config 官方文檔-中文譯本
Spring Cloud Netflix 官網文檔-中文譯本
本文實例github地址 Config Server Config Client
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64990.html
摘要:概要什么是使用獲取服務調用整合構建集群什么是模塊提供的功能是被動式的服務發現什么是服務發現服務發現就像聊天室一個每個用戶來的時候去服務器上注冊這樣他的好友們就能看到你你同時也將獲取好友的上線列表在微服務中服務就相當于聊天室的用戶而服務注冊中 概要 什么是Spring Cloud Eureka? 使用Eureka獲取服務調用 Eureka整合Spring Config Server 構...
摘要:服務器將要監聽的端口不要使用服務進行注冊不要在本地緩存注冊表信息使用一個新的注解,就可以讓我們的服務成為一個服務服務發現客戶端配置以為例需要做件事情成為服務發現的客戶端配置對應來說我們只需要配置如下啟動運行查看。 Spring簡介 為什么要使用微服務 單體應用: 目前為止絕大部分的web應用軟件采用單體應用,所有的應用的用戶UI、業務邏輯、數據庫訪問都打包在一個應用程序上。 showI...
摘要:是匹配規則,意思是配置以開頭并且以開頭的。健康監控集成了。可以通過配置去檢查指定的配置文件訪問結果如下可以通過設置來禁用健康檢查。顯示的是類似于用戶自己定義的屬性的那種黃色背景。意思就是這個不是系統的屬性,但是確認是生效的。 《Spring Cloud與Docker 微服務架構實戰》學習筆記 Config Client 在上篇文章中,我們已經編寫好了 Config Server 那個客...
閱讀 3495·2021-11-24 11:17
閱讀 2281·2021-11-15 11:38
閱讀 3367·2021-10-14 09:42
閱讀 2930·2019-08-30 15:54
閱讀 2024·2019-08-28 18:09
閱讀 539·2019-08-26 11:48
閱讀 1633·2019-08-26 10:48
閱讀 2147·2019-08-26 10:45