摘要:第篇配置管理微服務一大致介紹在講到配置時,不得不說提供了一套解決分布式的配置管理方案,它既包含了服務端也包含了客戶端將配置文件當作源代碼一樣存儲到或者服務器上,雖然說這樣沒有什么管理界面配置啥的,既然能用上傳上去,那也能做成管理界面,只是
SpringCloud(第 028 篇)ConfigServer 配置管理微服務
-
一、大致介紹1、在講到配置時,不得不說 SpringCloud 提供了一套解決分布式的配置管理方案,它既包含了服務端ConfigServer也包含了客戶端ConfigClient; 2、SpringCloud 將配置文件當作源代碼一樣存儲到 git 或者 svn 服務器上,雖然說這樣沒有什么管理界面配置啥的,既然能用 svn 上傳上去,那也能做成管理界面,只是花的工作量多少而已了,而既然都說了是配置,那就是只要會稍微學些git或者svn的提交文件方式,基本上任何都極易掌握; 3、當我們把配置文件放在 git 上的時候,我們如果要做到更新的話,我們需要借助于 git 網頁上的 push 操作來觸發更新操作; 4、說的有點多了,那么我們今天就來小試牛刀,簡單試試 ConfigServer 是如何和 Git 服務器相關聯存儲配置的,至于更新機制操作的話,請看后序章節講解; 5、這里還順便列舉下配置路徑的規則: /**************************************************************************************** * 配置服務的路勁規則: * * /{application}/{profile}[/{label}] * /{application}-{profile}.yml * /{label}/{application}-{profile}.yml * /{application}-{profile}.properties * /{label}/{application}-{profile}.properties ****************************************************************************************/二、實現步驟 2.1 添加 maven 引用包
2.2 添加應用配置文件(springms-config-serversrcmainresourcesapplication.yml)4.0.0 springms-config-server 1.0-SNAPSHOT jar com.springms.cloud springms-spring-cloud 1.0-SNAPSHOT org.springframework.cloud spring-cloud-config-server
server: port: 8220 spring: application: name: springms-config-server cloud: config: server: git: uri: https://gitee.com/ylimhhmily/OpenSource_CustomCircleLineProgressBar2.3 添加sidecar微服務啟動類(springms-config-serversrcmainjavacomspringmscloudMsConfigServerApplication.java)
package com.springms.cloud; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.config.server.EnableConfigServer; /** * ConfigServer 配置管理微服務。 * * @author hmilyylimh * * @version 0.0.1 * * @date 2017/9/28 * */ @SpringBootApplication @EnableConfigServer public class MsConfigServerApplication { public static void main(String[] args) { SpringApplication.run(MsConfigServerApplication.class, args); System.out.println("【【【【【【 ConfigServer微服務 】】】】】】已啟動."); } }三、測試
/**************************************************************************************** 一、ConfigServer 配置管理微服務(正常測試)(添加一個配置文件 application.yml 來做測試): 1、注解:EnableConfigServer 2、編輯 application.yml 文件,注意只填寫 cloud.config.server.git.uri 屬性; 3、啟動 springms-config-server 模塊服務,啟動1個端口; 4、在瀏覽器輸入地址 http://localhost:8220/abc-default.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 5、在瀏覽器輸入地址 http://localhost:8220/abc-default.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 6、在瀏覽器輸入地址 http://localhost:8220/abc-hehui.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 7、在瀏覽器輸入地址 http://localhost:8220/aaa-bbb.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 8、在瀏覽器輸入地址 http://localhost:8220/aaa-bbb.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 總結一:按照 /{application}-{profile}.yml 和 /{application}-{profile}.properties 這種規則來測試的,當找不到路徑的話,會默認找到 application.yml 文件讀取字段內容; 9、在瀏覽器輸入地址 http://localhost:8220/master/abc-default.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 10、在瀏覽器輸入地址 http://localhost:8220/master/abc-default.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 11、在瀏覽器輸入地址 http://localhost:8220/master/abc-hehui.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 12、在瀏覽器輸入地址 http://localhost:8220/master/aaa-bbb.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 13、在瀏覽器輸入地址 http://localhost:8220/master/aaa-bbb.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 14、在瀏覽器輸入地址 http://localhost:8220/springms-config-server-dev.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 總結二:按照 /{label}/{application}-{profile}.yml 和 /{label}/{application}-{profile}.properties 這種規則來測試,當找不到路徑的話,會默認找到 application.yml 文件讀取字段內容; 總結三:所以不管怎么測試路徑規則,找不到的話,反正也不會拋什么異常,反正一律會映射到 application.yml 文件上; ****************************************************************************************/ /**************************************************************************************** 二、ConfigServer 配置管理微服務(再添加一個配置文件 foobar-dev.yml 來做測試): 1、注解:EnableConfigServer 2、編輯 application.yml 文件,注意只填寫 cloud.config.server.git.uri 屬性; 3、啟動 springms-config-server 模塊服務,啟動1個端口; 4、在瀏覽器輸入地址 http://localhost:8220/foobar-dev.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-dev); 5、在瀏覽器輸入地址 http://localhost:8220/foobar-dev.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-dev); 6、在瀏覽器輸入地址 http://localhost:8220/master/foobar-dev.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-dev); 7、在瀏覽器輸入地址 http://localhost:8220/master/foobar-dev.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-dev); 總結一:按照 /{application}-{profile}.yml 和 /{application}-{profile}.properties /{label}/{application}-{profile}.yml 和 /{label}/{application}-{profile}.properties 這種規則來測試的,會找到 foobar-dev.yml 文件,既然找到了 foobar-dev.yml 文件的話,那自然就沒 application.yml 文件什么事情了; 8、在瀏覽器輸入地址 http://localhost:8220/foobar-aaa.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 9、在瀏覽器輸入地址 http://localhost:8220/foobar-aaa.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 10、在瀏覽器輸入地址 http://localhost:8220/master/foobar-aaa.yml 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 11、在瀏覽器輸入地址 http://localhost:8220/master/foobar-aaa.properties 正常情況下會輸出配置文件的內容(內容為:profile: profile-default); 總結二:將dev改成aaa的話,按照配置服務的路徑規則配置,當路徑中的配置文件不再url的目錄下的話,那么則會找到默認配置的文件 application.yml 來加載顯示。 ****************************************************************************************/四、下載地址
https://gitee.com/ylimhhmily/SpringCloudTutorial.git
SpringCloudTutorial交流QQ群: 235322432
SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接
歡迎關注,您的肯定是對我最大的支持!!!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/67619.html
摘要:第篇配置服務端設置安全認證一大致介紹前面提到的加密內容,雖然說對內容進行了加密,但是為了更安全的安全隔離,服務與服務之間也需要設置簡單的安全認證那么在本章節我們講解下如何配置服務端之間的簡單認證,的強大之處在于對認證這塊僅僅配置一下即可然 SpringCloud(第 034 篇)配置服務端ConfigServer設置安全認證 - 一、大致介紹 1、前面提到的加密內容,雖然說對內容進行了...
摘要:添加應用啟動類單點手動動態刷新配置。配置客戶端服務想要實現自動刷新配置的話,一端是不要做任何處理,只需要在一端處理即可。 SpringCloud(第 036 篇)單點手動動態刷新ConfigClient配置 - 一、大致介紹 1、當ConfigServer啟動后,假如我們新增配置內容的話,是不是要重新啟動一下ConfigServer呢? 2、答案肯定是不需要重新啟動的,因為 Sprin...
摘要:添加應用啟動類通過半自動刷新配置。配置客戶端服務想要實現自動刷新配置的話,一端是不要做任何處理,只需要在一端處理即可。 SpringCloud(第 037 篇)通過bus/refresh半自動刷新ConfigClient配置 - 一、大致介紹 1、上章節我們講到了手動刷新配置,但是我們假設如果微服務一多的話,那么我們是不是需要對每臺服務進行手動刷新呢? 2、答案肯定是不需要的,我們也可...
SpringCloud(第 029 篇)配置客戶端 ConfigClient 接入配置服務端 - 一、大致介紹 1、有配置服務端,那么勢必就會有與之對應的客戶端,SpringCloud 文檔中集成也非常簡單; 2、但是這里有點需要注意,就是 bootstrap 配置文件,官方建議我們在bootstrap中放置不更改的屬性,我們同樣也需要在這里做一些簡單不易于改變的配置; 3、這里還順便列舉下配置...
摘要:年月阿里巴巴高級技術專家許真恩慕義發布了首個開源版本,作為的開源實現截止目前已經更新到了的大版本,并且支持大規模生產版本。支持目前幾乎所有主流的微服務生態體系。 前言 6月份阿里開源的Nacos出了1.0.1版本,從去年7月份第一個release版本到現在一直在默默關注 官方的版本規劃為:Nacos從0.8.0開始支持生產可用,1.0版本可大規模生產可用,2.0版本接入k8s、Spri...
閱讀 2323·2023-04-26 00:28
閱讀 3067·2019-08-30 15:55
閱讀 2742·2019-08-30 12:47
閱讀 1550·2019-08-29 11:04
閱讀 3150·2019-08-28 18:14
閱讀 945·2019-08-28 18:11
閱讀 1671·2019-08-26 18:36
閱讀 3383·2019-08-23 18:21