spring cloud系列笔记-08 Spring Cloud Bus

Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来。它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控。本文要讲述的是用Spring Cloud Bus实现通知微服务架构的配置文件的更改。

  1. pom.xml

    <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-bus-amqp -->
    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
    </dependency>
    
  2. bootstrap.yml

    eureka:
    client:
    service-url:
      defaultZone: http://localhost:8761/eureka/
    spring:
    application:
    name: config-client
    cloud:
    config:
      label: master
      profile: dev
      discovery:
        enabled: true
        service-id: config-server
    server:
    port: 8771
    
  3. application.yml

    server:
    port: 8771
    spring:
    rabbitmq:
    host: 192.168.126.138
    port: 5672
    

spring bus的主要作用是,实现配置变动时无需重启服务(config-server),使用rabbitmq进行消息订阅,手动刷新的地址:http://localhost:8771/actuator/bus-refresh