1. config 简介
SpringCloud Config 是一个解决分布式系统的配置管理方案的项目。它包含了 Client 和 Server 两个部分,Server 端提供配置文件的存储、以接口的形式将配置文件的内容提供出去,Client 端通过接口获取数据、并依据此数据初始化自己的应用
目前 SpringCloud Config 的使用主要是通过 git/svn 方式做一个配置中心,然后每个服务从其中获取自身配置所需的参数
SpringCloud Config 也支持本地参数配置的获取。如果使用本地存储的方式,在 application.properties 文件添加 spring.profiles.active = native 配置即可,它会从项目的 resources 路径下读取配置文件。如果是读取指定的配置文件,那么可以使用 spring.cloud.config.server.native.searchLocations = file:D:/properties/ 来读取
2. Config 作用
SpringCloud Config 是一个基于 http 协议的远程配置实现方式,通过统一的配置管理服务器进行配置管理,客户端通过 https 协议主动的拉取服务的的配置信息,完成配置获取
简单一点的说就是:分布式环境中,很多的服务都是集群部署,那就意味着这些集群部署的服务都需要相同的配置文件。所以,这时候就引入了 SpringCloud Config 这个组件,使用该组件来进行众多的配置文件的统一管理。例如,我们在修改某一配置文件时,只需要在远程的 gitHub 等工具上面修改即可,不用多次的在众多的配置文件中来回繁琐的修改
3. config 架构

SpringCloud Config 分为服务端和客户端,服务端负责将本地 git 或者 svn 中存储的配置文件发布成 REST 风格的接口,客户端可以从服务端 REST 接口获取配置。但客户端并不能主动感知到配置的变化,从而主动去获取新的配置,这需要每个客户端通过 POST 方法触发各自的 /refresh 接口
4. Config 配置中心的实现
4.1. 创建子模块项目 Config 配置中心
依然使用 上一篇 文章的项目,然后创建子模块项目 Config 配置中心,如下

4.2. Maven 依赖
4.2.1. 消费方与提供方
作为 config 配置中心的客户端,消费方与提供方都添加如下依赖
<!--springcloud config客户端-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-client</artifactId>
</dependency>
4.2.2. Config 配置中心
作为 config 配置中心的服务端,也是要注册进 eureka 注册中心的
<!--springcloud config服务端-->
<dependency>

本文介绍了SpringCloud Config作为配置管理解决方案,包括它的作用、架构和实现步骤。配置中心服务端存储配置文件,并通过HTTP接口提供给客户端。客户端通过轮询或者监听方式获取配置更新。文章详细讲解了创建配置中心子模块、配置依赖、配置文件的创建和管理,以及启动和测试过程。
最低0.47元/天 解锁文章
167万+





