美文网首页
SpringCloud Bus 消息总线

SpringCloud Bus 消息总线

作者: BzCoder | 来源:发表于2018-09-01 01:56 被阅读134次

上一篇文章我们介绍了配置中心,但是现在更新配置还是要重启啊!?所以我们本章就来介绍一个不重启的方法。

相关资料以及注意事项:

服务端

1.引入MAVEN

相比上一篇文章,新添加以下两个

  • 添加spring-cloud-starter-bus-amqp,这是消息队列,用于通知更新配置
  • 添加spring-cloud-config-monitor,暴露Moniror端口,用于WebHook,但存在BUG,本文章暂不介绍配合WebHook使用

2.配置文件

配置文件配置了RabbitMQ的地址以及暴露刷新配置接口地址

spring:
  application:
    name: config
  cloud:
    config:
      server:
        git:
          uri: https://github.com/BzCoder/config-repo
          username: 
          password: 
          basedir: D:/Config/basedir
  rabbitmq:
    host: 192.168.15.128
    username: guest
    password: guest
    port: 5672

eureka:
  instance:
    prefer-ip-address: true
  client:
    service-url:
      defaultZone: http://localhost:8762/eureka/
# 开放 bus-refresh 接口,以便配合 bus 实现 配置的动态刷新
management:
  endpoints:
    web:
      exposure:
        include: '*'

服务端配置完毕

客户端

1.引入MAVEN

相比上一篇文章,新添加以下一个

  • 添加spring-cloud-starter-bus-amqp,这是消息队列,用于通知更新交互

2.代码修改

在你需要刷新的作用域上添加@RefreshScope,这样随着配置刷新,参数就会刷新

@RestController
@RefreshScope
public class ConfigController {
    @Value("${env}")
    private String env;

    @GetMapping("/env")
    public String getEnv()
    {
        return env;
    }

}

这样客户端也配置完毕了。

3.实践操作

如果在RabbitMQ的管理界面中会出现两个新的队列,那么恭喜你,已经成功了一半了。

新的队列
接下来在修改远程仓库的数据后向ConfigServer端口:http://localhost:8080/actuator/bus-refresh,如何返回状态为200,就表示你已经刷新配置。 成功

在我们的Client端可以看到配置更新的Log,这样就代表你成功了。
那么有关于SpringCloudBus就介绍到这里了,有关于利用Webhook自动刷新配置,要等待Spring官方进行修复。等以后来填坑。

相关文章

  • 消息总线-Springcloud Bus

    什么是消息总线 在微服务架构的系统中, 我们通常会使用轻量级的消息代理来构建一个共用的消息主题让系统中所有微服务实...

  • SpringCloud Bus 消息总线

    上一篇文章我们介绍了配置中心,但是现在更新配置还是要重启啊!?所以我们本章就来介绍一个不重启的方法。 相关资料以及...

  • Bus消息总线

    Bus消息总线 原文在github,有些相对路径连接不能跳转,如想看原文项目地址 spingboot2.1.3加s...

  • Bus 消息总线

    Bus概述 Spring Cloud Bus 是用轻量的消息中间件将分布式的节点连接起来,可以用于广播配置文件的更...

  • Spring Cloud Bus:消息总线

    Spring Cloud Bus:消息总线 Spring Cloud Bus 使用轻量级的消息代理来连接微服务架构...

  • 高级框架第十三天Config:分布式配置中心

    第一部分 Bus:消息总线 主要内容 1.消息总线简介 2.基于消息总线实现全局热刷新 一.消息总线简介 1.什么...

  • Chapter Nine《SpringCloud微服务实战》

    消息总线: Spring Cloud Bus 1.什么是BUS? spring cloud是按照spring的配置...

  • 54 消息总线bus

    在微服务架构中,通常会使用轻量级的消息代理来构建一个共用的消息主题来连接各个微服务实例,它 广播的消息会被所有在注...

  • SpringCloud系列之消息总线BUS-4消息总线如何助攻其

    发布-订阅模型 Bus的事件推送由三个角色构成:  事件对象:Bus中定义的一个事件类,通常是一个Pojo对...

  • SpringCloud系列之消息总线BUS-1.简介

    在之前config章节中讲到,我们在修改完配置文件之后是需要在一个config-client中调用actuator...

网友评论

      本文标题:SpringCloud Bus 消息总线

      本文链接:https://www.haomeiwen.com/subject/swlywftx.html