![e33033a6f90f87bfd345b38c0308236a.png](https://i-blog.csdnimg.cn/blog_migrate/916d2b339d1bc3fe13957fa3b7552318.jpeg)
Spring Cloud Config 可以为微服务架构中的应用提供集中化的外部配置支持,它分为服务端和客户端两个部分,本文将对其用法进行详细介绍。
SpringCloud实战电商项目mall-swarm(5.1k+star)地址:https://github.com/macrozheng/mall-swarm
Spring Cloud Config 简介
Spring Cloud Config 分为服务端和客户端两个部分。服务端被称为分布式配置中心,它是个独立的应用,可以从配置仓库获取配置信息并提供给客户端使用。客户端可以通过配置中心来获取配置信息,在启动时加载配置。Spring Cloud Config 的配置中心默认采用Git来存储配置信息,所以天然就支持配置信息的版本管理,并且可以使用Git客户端来方便地管理和访问配置信息。
在Git仓库中准备配置信息
由于Spring Cloud Config 需要一个存储配置信息的Git仓库,这里我们先在Git仓库中添加好配置文件再演示其功能,Git仓库地址为: https:// gitee.com/macrozheng/sp ringcloud-config 。
配置仓库目录结构
![c0b09d68139f452f8497390599e8c848.png](https://i-blog.csdnimg.cn/blog_migrate/0862fc9f3f1fc82eff336fdf806f40fe.jpeg)
master分支下的配置信息
- config-dev.yml:
config:
info: "config info for dev(master)"
- config-test.yml:
config:
info: "config info for test(master)"
- config-prod.yml:
config:
info: "config info for prod(master)"
dev分支下的配置信息
- config-dev.yml:
config:
info: "config info for dev(dev)"
- config-test.yml:
config:
info: "config info for test(dev)"
- config-prod.yml:
config:
info: "config info for prod(dev)"
创建config-server模块
这里我们创建一个config-server模块来演示Spring Cloud Config 作为配置中心的功能。
在pom.xml中添加相关依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
<groupId>org.springfr