六.Spring Cloud分布式配置中心实践(Config)

开宗明义
在分布式系统中,由于服务数量巨大,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud config 组件中,分两个角色,一是config server,二是config client

1 构建config server

1.1 创建springboot项目作为config server,命名为config-server


六.Spring Cloud分布式配置中心实践(Config)_第1张图片
Screenshot from 2018-02-23 22-23-48.png

1.2 创建后的pom.xml文件(引入eureka,config server依赖)


六.Spring Cloud分布式配置中心实践(Config)_第2张图片
Screenshot from 2018-02-23 22-25-49.png

1.3 启动类ConfigServerApplication ,加上@EnableConfigServer注解开启配置服务器的功能


六.Spring Cloud分布式配置中心实践(Config)_第3张图片
Screenshot from 2018-02-23 22-28-13.png

1.4 配置application.properties文件


六.Spring Cloud分布式配置中心实践(Config)_第4张图片
Screenshot from 2018-02-25 12-16-49.png

spring.cloud.config.server.git.uri:配置git仓库地址(最好是https,ssh实践中可能会出错,原因尚待研究)
spring.cloud.config.server.git.searchPaths:配置仓库路径
spring.cloud.config.label:配置仓库的分支
spring.cloud.config.server.git.username:访问git仓库的用户名
spring.cloud.config.server.git.password:访问git仓库的用户密码

1.5 建一个gitthub仓库spring-cloud-config,目录下有config文件夹,存放config-client-dev.properties文件,文件内有如下内容:foo = foo version 3
六.Spring Cloud分布式配置中心实践(Config)_第5张图片
Screenshot from 2018-02-25 12-21-22.png

1.6 启动工程,访问localhost:8771/foo/dev,证明配置服务中心可以从远程程序获取配置信息


六.Spring Cloud分布式配置中心实践(Config)_第6张图片
Screenshot from 2018-02-25 12-37-38.png

http请求地址和资源文件映射如下:
/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties

2 构建config client

2.1 创建springboot项目作为config client,命名为config-client


六.Spring Cloud分布式配置中心实践(Config)_第7张图片
Screenshot from 2018-02-25 12-47-24.png

2.2 创建后的pom.xml文件(引入config client,web依赖)


六.Spring Cloud分布式配置中心实践(Config)_第8张图片
Screenshot from 2018-02-25 12-50-44.png

2.3 配置bootstrap.properties文件

六.Spring Cloud分布式配置中心实践(Config)_第9张图片
Screenshot from 2018-02-25 12-56-24.png

spring.cloud.config.label 指明远程仓库的分支
spring.cloud.config.profile 环境配置
dev开发环境
test测试环境
pro正式环境
spring.cloud.config.uri= http://localhost:8771/指明配置服务中心的网址

2.4 启动类写一个API接口“/hi”,返回从配置中心读取的foo变量的值


六.Spring Cloud分布式配置中心实践(Config)_第10张图片
Screenshot from 2018-02-25 13-04-24.png

2.5 启动工程,访问localhost:8772/hi,说明config-client从config-server获取了foo的属性,而config-server是从git仓库读取的


六.Spring Cloud分布式配置中心实践(Config)_第11张图片
Screenshot from 2018-02-25 13-08-18.png

2.5.1 如图所示


六.Spring Cloud分布式配置中心实践(Config)_第12张图片
Screenshot from 2018-02-25 13-10-18.png

未完待续......

你可能感兴趣的:(六.Spring Cloud分布式配置中心实践(Config))