Bus消息总线

Bus消息总线:

一、Bus消息总线介绍:

​ Spring Cloud Bus 是用轻量的消息中间件将分布式的节点连接起来,可以用于广播配置文件的更改或者服务的监控管理。关键的思想就是,消息总线可以为微服务做监控,也可以实现应用程序之间相通信。

​ Spring Cloud Bus 可选的消息中间件包括 RabbitMQ 和 Kafka 。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c1PdXtHH-1630044660331)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210826141857352.png)]

二、RabbitMQ回顾

​ RabbitMQ 提供了 6 种工作模式:简单模式、work queues、Publish/Subscribe 发布与订阅模式、Routing 路由模式、Topics 主题模式、RPC 远程调用模式(远程调用,不太算 MQ;暂不作介绍)。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B2FYanQG-1630044660335)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210826142705128.png)]

RabbitMQ安装:链接

三、Bus入门案例:

步骤:

1.分别在 config-server 和 config-client中引入 bus依赖:bus-amqp

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

2.分别在 config-server 和 config-client中配置 RabbitMQ

# 配置config-server地址
# 配置获得配置文件的名称等信息
spring:
  cloud:
    config:
      # 配置config-server地址
#      uri: http://localhost:9527
      # 配置获得配置文件的名称等信息
      name: config # 文件名
      profile: dev # profile指定,  config-dev.yml
      label: master # 分支
#      从注册中心寻找config-server地址
      discovery:
        enabled: true
        service-id: CONFIG-SERVER
# 配置rabbitmq信息
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest
    virtual-host: /
    
management:
  endpoints:
    web:
      exposure:
        include:  '*' #这样是暴露所有,这样不太安全

核心在于:rabbitmq和management

3.在config-server中设置暴露监控断点:bus-refresh

server:
  port: 9527
  #config的默认端口是8888
spring:
  application:
    name: config-server
#  Spring Cloud Config
  cloud:
    config:
      server:
#        git  的 远程仓库地址
        git:
          uri:  https://gitee.com/tianyinetwork/config-tianyi.git
      label:  master  # 分支配置
#  配置rabbitmq信息
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest
    virtual-host: /

#将自己注册到Eureka中
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8761/eureka

#暴露bus的刷新端点
management:
  endpoints:
    web:
      exposure:
        include: 'bus-refresh'

核心在于:rabbitmq和management

4.启动测试

这样就可以在命令行窗口中输入命令:

curl -X POST http://localhost:8001/actuator/bus-refresh

如果没有报错就是成功执行了,然后就实现了刷新效果
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值