SpringCloud学习笔记(七)——使用Spring Cloud Bus刷新配置

简 介

在前面Spring Cloud Config中,我们讲了如何在git配置中心发生变化时,如何不通过重启config client来达到获取更新之后的配置的目的。但是,这种方式只对单个Config-Client有效(往哪个Config-Client发送刷新请求,哪个配置就得到刷新,剩下的Config-Client获取的仍是旧的配置信息)。当Config-Client实例集群数量较多时,如果都要手动一个一个去刷新配置,不仅麻烦还容易遗漏。值得庆幸的是,我们可以借助Spring Cloud Bus来自动刷新集群的配置信息。

Spring Cloud Bus使用轻量级的消息代理(如RabbitMQ,Kafka)连接分布式系统的节点,可以以广播的形式将一些变更信息(如配置的变更)扩散到分布式链路中去。所以我们可以在Config-Server和Config-Client集群中加入Spring Cloud Bus,然后往某个Config-Server实例发送/actuator/refresh请求来刷新集群中所有实例的配置信息。

引入Spring Cloud Bus

Spring Cloud Bus支持RabbitMQ和Kafka等消息中间件,这里介绍Kafka的整合方式,关于RabbitMQ的整合方式可以参考这个链接

Kafka下载
关于Kafka的下载,配置与启动参考链接

在Config-Server和Config-Client的pom中引入spring-cloud-starter-bus-kafka和spring-boot-starter-actuator依赖:

		<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-kafka</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

只需要这样就配置完成。

WebHooks

配合WebHooks可以实现自动配置刷新,在配置得到修改的时候它可以代替我们向Config-Server发送刷新请求。以码云为例,添加一个WebHooks:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值