什么是配置中心
配置:就是springboot中的application.yml/properties文件
比如:项目名、端口号、数据库连接参数、启动参数等。
配置中心:配置中心就是用来管理项目当中所有配置的系统,也是微服务系统当中不可或缺的一部分。只需要修改配置中心中配置文件的内容,则微服务集群中的配置内容也会随着改变。
为什么使用配置中心
把项目中各种配置、各种参数、各种开关,全部都放到一个集中的地方进行统一管理
在没有配置中心的传统项目中,我们只需要在application.yml等配置文件中,设置好要配置好的值,就能完成配置。比如说我们的环境配置,业务参数的配置。这种做法虽然简单,但是一旦有参数需要修改,我们需要登录到服务器上,去手动修改,如果是集群环境,还需要修改多台,不容易做到平滑修改,甚至有的参数改动后。
「配置中心」的思路就是把项目中各种配置、各种参数、各种开关,全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。当各个服务需要获取配置的时候,就来「配置中心」的接口拉取。当「配置中心」中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。
可以溯源改动记录
在没有配置中心的传统项目中,因为是直接修改的配置文件,所以不容易形成记录,也无法记录是谁修改的, 什么时候修改的,修改了哪些内容,当配置出错的时候,也就不能回滚了。
配置中心的特点
- 配置集中管理,方便统一规范
- 配置和应用分离
- 实时更新(当「配置中心」中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。)
- 高可用(每个服务每次从配置中心读取配置信息后,会在本地生成一个缓存文件,当下次读取时,网络断掉/配置中心挂了,服务就会去读缓存,不让程序报错)