Spring Cloud分布式配置中心
分布式配置中心
我们回顾一下到目前为止已经接触过得微服务:
- 服务发现注册中心
- 服务消费者
- 服务提供者
- 配置中心
- 配置客户端
所以可以发现:除了注册中心以外,其他的服务都可以抽象成一个微服务,因此也可以借鉴先前的经验做成高可用分布式架构。要做到上述配置,我们只需要遵守一个规则:将所有的Config Server都指向同一个Git仓库,这样所有配置的内容通过统一的共享文件系统来维护。
等到客户端指定Config Server位置时,只需要配置Config Server外的负载均衡即可。
由此,我们可以得出一个结论:配置服务只是提供不同请求的一个微服务而已,所以只需要将其也注册为服务,这样所有客户端就可以通过服务的方式进行访问。
配置刷新
有时候需要对配置内容做实时更新,只需要集成Spring Boot Actuator即可。其中包括/refresh
端点可以用于刷新配置。
总结
不难想到,当Git仓库的Web Hook与此功能进行关联。当Git提交变化时,就给对应配置主机发送/refresh
请求实现配置信息的实时变更。
当我们的系统发展壮大之后,维护这样的刷新清单也将成为一个非常大的负担,而且很容易犯错,那么有什么办法可以解决这个复杂度呢?后续我们将继续介绍如何通过Spring Cloud Bus来实现以消息总线的方式进行通知配置信息的变化,完成集群上的自动化更新。
文章引用
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!