配置中⼼
什么是配置中心
微服务系统中,存在很多功能开关和各种参数的配置项,传统的配置⽂件、数据库等⽅式⽆法满⾜开发⼈ 员对配合管理的需求,此时,分布式配置中⼼应运⽽⽣。
配置中⼼的特点
1、统⼀管理:配置中⼼服务端负责配置的管理(新增、修改、删除、发布),集成了配置中⼼客户端的微 服务程序可以统⼀从配置中⼼服务端拉取配置,从⽽实现整个微服务系统的统⼀配置管理。
2、区分环境:⼀个微服务应⽤中的某些配置项,在不同的环境(开发、测试、⽣产)通常是不同的,作为 分布式配置中⼼需要具有隔离不同环境的功能,使得同⼀个微服务在不同环境能拉取到对应的配置。
3、实时刷新:当配置中⼼服务端中的配置发⽣了修改时,配置中⼼客户端需要能实时监听到配置的改变, 使得微服务应⽤程序可以实时获取到最新配置,并且不⽤重新部署应⽤程序。
4、权限控制:在配置中⼼中,可以针对不同的⻆⾊或⽤户设置对应的权限,⽐如张三可以新建配置项,但 不能发布配置;⽐如⼩明可以查看配置项,但不能修改配置。
5、版本控制:在使⽤配置中⼼的过程中,难免会出现误操作,⽽这个时候就需要进⾏版本回退,所以作为 配置中⼼,是⼀定要⽀持版本控制的。
6、灰度发布:在需要发布⼀项配置时,如果需要发布到多个实例(集群),那么此时可以只发布到部分实 例,待测试通过后,在发布到全部实例,这就是配置的灰度发布。
常⻅配置中⼼组件
1、Spring Cloud Config
2、Nacos
3、Apollo
4、consul
注册中⼼
什么是注册中心
注册中⼼相当于微服务架构中的地址通讯录,记录每个微服务及其地址的映射关系,每个微服务会将服务 及其地址注册到注册中⼼,服务消费者在调⽤某个微服务之前会先从注册中⼼查找服务地址,然后进⾏调 ⽤。
注册中⼼的特点
1、服务的⾃动注册 微服务应⽤在启动时,通过注册中⼼客户端组件,将服务相关信息⾃动注册给注册中⼼服务端。
2、服务的健康检查 当已经注册到注册中⼼的微服务实例宕机后,注册中⼼服务端能发现实例已经宕机,并把相关信息从注册 中⼼删除掉。
3、服务的⾃动发现 服务消费者需要能实时监听到注册中⼼中服务信息的变更,以能在真正调⽤服务时不会出现错误。
常⻅注册中⼼组件
1、Zookeeper
2、Eureka
3、Nacos
4、Consul
服务⽹关