SpringCloud(H版&alibaba)之Bus篇

SpringCloud之Bus 消息总线

接上篇springcloud Config

概念

上篇config的加深和扩充,一言以蔽之:

​ 分布式自动刷新配置功能

​ Spring Cloud Bus 配合 Spring Cloud Config

​ 使用可以实现配置的动态刷新

是什么:Bus支持两种消息代理:RabbitMQ和 Kafka

让客户端订阅config server ,然后通过消息中间件,让客户端统一去刷新信息

能干嘛:

Spring Cloud Bus 能管理和传播分布式系统间的消息,就像一个分布式执行器,可用于广播状态更改、事件推送等,也可以当做微服务间的通信通道。

什么是总线:

​ 在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个公用的消息主题,并让系统中所有微服务实例连接上来。由于该主题中产生的消息会被所有的实例监听和消费,所以称它为消息总线。在总线上的各个实例。都可以方便地广播一些需要让其他连接在该主题上的实例都知道的消息。

基本原理

ConfigClient实例都监听MQ中同一个topic(默认是springCloudBus)。当一个服务刷新数据的时候,它会把这个信息放入到Topic中,这样其他监听同一Topic的服务就能得到通知,然后去更新自身的配置。

RabbitMQ环境配置

不同版本erlang ,对应不同的rabbitmq

erlang 21.3 rabbitmq 3.7.14 而且erlang得保证只有一个版本

1、安装Erlang,下载地址:http://erlang.org/download/otp_win64_21.3.exe

官网下载慢:http://erlang.org/download/ 可以这里下载

​ 步骤:https://blog.csdn.net/g6256613/article/details/80191402?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162316383516780255294263%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162316383516780255294263&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-1-80191402.pc_search_result_cache&utm_term=%E5%AE%89%E8%A3%85erlang&spm=1018.2226.3001.4187

注意:是Path,不是ClassPath

测试安装:cmd打开,输入erl

path和Classpath的作用分别是什么:

​ a. path是配置Windows可执行文件的搜索路径,即扩展名为.exe的程序文件所在的目录,用于指定DOS窗口命令的路径。

​ b. Classpath是配置class文件所在的目录,用于指定类搜索路径,JVM就是通过它来寻找该类的class类文件的。

2、安装RabbitMQ,下载地址 https://www.rabbitmq.com/install-windows.html#installer

官网有问题,从github下载

https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.14

​ https://blog.csdn.net/qq_47588845/article/details/107986373?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162316387316780264011416%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162316387316780264011416&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29_name-1-107986373.pc_search_result_cache&utm_term=%E5%AE%89%E8%A3%85rabbitmq&spm=1018.2226.3001.4187

3、进入RabbitMQ安装目录下的sbin目录

​ D:\rabbitmq\rabbitmq_server-3.8.16\sbin

4、输入以下命令启动管理功能

​ rabbitmq-plugins enable rabbitmq_management 可视化插件

​ 在sbin目录下打开cmd并输入上述命令便可打开

​ 安装完成后可以在开始windows开始菜单栏发现有相关程序

5、访问地址查看是否安装成功

​ 重新启动服务,双击sbin目录下的rabbitmq-server.bat

6、输入账号密码并登录:

​ 打开浏览器,地址栏输入 http://127.0.0.1:15672 就可以看到登录页面

​ 输入 guest guest 就可以登录

Bus动态刷新全局广播

设计思想和选型

必须先具备良好的RabbitMQ环境

演示广播效果,增加复杂度,再以3355位模板再制作一个3366

​ 1.新建cloud-config-client-3366

​ 2.POM,与之前的类似

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值