Spring Cloud Config 工作流程如下:
开发或运维人员提交配置文件到远程的 Git 仓库。
Config 服务端(分布式配置中心)负责连接配置仓库 Git,并对 Config 客户端暴露获取配置的接口。
Config 客户端通过 Config 服务端暴露出来的接口,拉取配置仓库中的配置。
Config 客户端获取到配置信息,以支持服务的运行。
Spring Cloud Config 的特点
Spring Cloud Config 具有以下特点:
Spring Cloud Config 由 Spring Cloud 团队开发,可以说是 Spring 的亲儿子,能够与 Spring 的生态体系无缝集成。
Spring Cloud Config 将所有微服务的配置文件集中存储在一个外部的存储仓库或系统(例如 Git)中,统一管理。
Spring Cloud Config 配置中心将配置以 REST 接口的形式暴露给各个微服务,以方便各个微服务获取。
微服务可以通过 Spring Cloud Config 向配置中心统一拉取属于它们自己的配置信息。
当配置发生变化时,微服务不需要重启即可感知到配置的变化,并自动获取和应用最新配置。
一个应用可能有多个环境,例如开发(dev)环境、测试(test)环境、生产(prod)环境等等,开发人员可以通过 Spring Cloud Config 对不同环境的各配置进行管理,且能够确保应用在环境迁移后仍然有完整的配置支持其正常运行。