Spring Cloud Config介绍

市场上的开源的配置中心有很多,如奇虎360的QConf、淘宝的Diamond、百度的Disconf、携程的Apollo都可解决上述提到的问题,同样地Spring Cloud提供的配置中心则是Spring Cloud Config。

Spring Cloud Config在官方文档中的表述:为分布式系统中的外部化配置提供服务器Config Server和客户端Config Client支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。

 

它与Spring应用程序非常契合,也可以与任何以任何语言运行的应用程序一起使用。

对于应用程序从开发到测试和生产的部署流程,Config Server都可以管理这些环境之间的配置,并确定应用程序具有迁移时需要运行的一切。

服务器存储后端的默认实现使用git,因此它轻松支持配置信息的版本管理,以及可以访问用于管理内容的各种工具。

可以轻松添加替代实现,并使用Spring配置将其插入。

 

Spring Cloud Config默认支持的是从git存储读取配置信息,也支持从其他的存储方式读取配置信息,如本地文件系统、SVN仓库等。

想要学会使用Spring Cloud Config,我们需要先了解Spring Cloud Config实现配置的两个重要角色:Config ServerConfig Client

 

1.Config Server Config Server是一个集中式的配置服务器,它提供配置文件的存储配置,支持本地仓库读取配置,也支持远程git或SVN读取配置,默认为git存储配置,然后以接口的形式将配置文件的内容提供出去。

它主要有以下功能。

提供用于外部配置的基于HTTP资源的API

对配置文件中的属性进行加密和解密

可轻松地使用@EnableConfigServer注解将其应用到Spring Boot程序中 。

2.Config Client

Config Client是Config Server的客户端,可以通过Config Server提供的API获取到存储的配置属性,并依据此初始化自己的应用。

它主要有以下功能。

绑定到Config Server并使用远程属性源初始化Spring容器

对配置文件中的属性进行加密和解密

 

Config Server和Config Client实现配置读取的流程如图所示。

 

 

从图中我们可以看出,

Config Client的配置都是从Config Server中获取的,而Config Server根据我们自己配置的方式从本地配置文件或者Git仓库获取配置。

所以接下来我们想要实现分布式配置就需要进行和Config Server和Config Client的搭建和配置。

posted @ 2022-12-14 16:55  cnetsa  阅读(139)  评论(0编辑  收藏  举报