天天看点

Spring Cloud中bus组件配置

原理架构图

Spring Cloud中bus组件配置

用rabbitMQ或者Kafka都属于三方组件,必然要开启@EnableDiscoveryClient来代替@EnableEurekaClient

想用上消息总线还须要加上如下配置,这样消息总线才能监测到组件的变化并进行同步

spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest

spring.cloud.bus.enabled=true
spring.cloud.bus.trace.enabled=true
management.endpoints.web.exposure.include=bus-refresh
           

最后加上依赖的pom坐标

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
           

如果是传统的做法,需要重启服务,才能达到配置文件的更新,加上消息总线之后,我们只需要发送post请求.../actuator/bus-refresh,你会发现config-client会重新读取配置文件

tips:Github上设置webhook钩子可以达到同样的目的:使用webhook可以让每次在本地push到github上去后,让服务器自动pull下来,这样就不用每次提交然后手动pull的过程了。

继续阅读