SpringCloud Bus动态刷新全局广播

文章目录

代码地址

地址:https://github.com/13thm/study_springcloud/tree/main/days11_ Bus

配置项目

必须先具备良好的RabbitMQ环境先

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

  1. 新建:cloud-config-client-3366
  2. 写pom
  3. 写yml
  4. 主启动类
  5. 写服务类

目的:
利用消息总线触发一个服务端ConfigServer的/bus/refresh端点,而刷新所有客户端的配置

配置修改

  1. 给cloud-config-center-3344配置中心服务端添加消息总线支持
    修改pom 和yml
  2. 给cloud-config-client-3355配置中心服务端添加消息总线支持
    修改pom 和yml
  3. 给cloud-config-client-3366配置中心服务端添加消息总线支持
    修改pom 和yml

测试

先启动!

csharp 复制代码
http://config-3344.com:3344/master/config-dev.yml
csharp 复制代码
http://localhost:3355/configInfo
csharp 复制代码
http://localhost:3366/configInfo

然后再Gitee里面修改

发送一次:curl -X POST "http://localhost:3344/actuator/bus-refresh"

结果:三个都修改了! 成功!


SpringCloud Bus动态刷新定点通知

不想全部通知,只想定点通知

只通知3355 不通知3366

csharp 复制代码
公式:http://localhost:配置中心的端口号/actuator/bus-refresh/

例子:
curl -X POST "http://localhost:3344/actuator/bus-refresh/config-client:3355"

/bus/refresh请求不再发送到具体的服务实例上,而是发给config server并通过destination参数类指定需要更新配置的服务或实例

csharp 复制代码
curl -X POST "http://localhost:3344/actuator/bus-refresh/config-client:3355"

实现了只通知3355 不通知3366

相关推荐
百锦再1 小时前
Java中的反射机制详解:从原理到实践的全面剖析
java·开发语言·jvm·spring boot·struts·spring cloud·kafka
普通网友2 小时前
PL/SQL语言的正则表达式
开发语言·后端·golang
想用offer打牌2 小时前
一站式了解火焰图的基本使用
后端·面试·架构
小王同学^ ^3 小时前
从零开发一个操作系统(1.3) 如何使用ContextOS 智能名片打造个人IP
后端
Penge6663 小时前
Go 泛型里的 ~[]E 到底是什么
后端
REDcker4 小时前
FTP协议原理及应用精解
linux·后端·计算机网络·互联网·ftp·服务端开发
楚兴5 小时前
Go + Eino 构建 AI Agent(一):Hello LLM
人工智能·后端
一个处女座的程序猿O(∩_∩)O5 小时前
Go语言Map值不可寻址深度解析:原理、影响与解决方案
开发语言·后端·golang
玹外之音6 小时前
Spring AI MCP 之 SSE WebFlux 实战:从零构建 AI 天气助手
spring·openai
用户579854769716 小时前
01:系统架构全景:CountBot 多层模块化设计解析
后端