springAMQP自定义fanout交换机进行消息的广播

rabbitmq一共有三种交换机:

  1. fanout--广播
  2. direct--定向
  3. topic--话题

rabbitmq-web端

首先我们需要建立一个名叫cybg.fanout交换机与两个自定义的队列用于测试广播效果

我这里就起名字叫做fanout_queue1&fanout_queue2

项目中:

首先对我们的Listener加入对上面两个队列的监听

复制代码
@RabbitListener(queues = "fanout_queue1")
public void fanoutQ1(String msg) throws InterruptedException {
    System.out.println("fanout1接收到的msg:"+msg);
    Thread.sleep(20);
}


@RabbitListener(queues = "fanout_queue2")
public void fanoutQ2(String msg) throws InterruptedException {
    System.out.println("fanout2接收到的msg:"+msg);
    Thread.sleep(20);
}

然后我们可以在springtest中添加对于发消息的demo

复制代码
@Test
void testSendMsgToFanout(){
    String exchangeName = "cybg.fanout";
    String msg = "fanout everyone";
    rabbitTemplate.convertAndSend(exchangeName,null,msg);
}

这里和直接发送到队列不同的是,此处的参数变为了交换机名字、routeKey、message

运行listener服务可以发现我们的队列已经可以拿到我们对交换机发送的消息

复制代码
fanout1接收到的msg:fanout everyone
fanout2接收到的msg:fanout everyone
相关推荐
脉动数据行情123 分钟前
C# 实现德指 DAX 期货 WebSocket 实时行情监听
开发语言·websocket·c#
大圣编蚕1 小时前
Java ByteArrayInputStream 详解:从入门到实战
java·开发语言·算法
菜鸟~noob2331 小时前
【电子战】第02篇:能量检测器 vs. 相关检测器【含matlab代码】
开发语言·matlab
OpenAnolis小助手2 小时前
一句话看透 JVM,SysOM 诊断 Skill 新增 Java 应用诊断能力
java·开发语言·jvm·阿里云·操作系统控制台·sysom
小玮看世界2 小时前
[Python]OD算法在OD实际运用转化参考清单
开发语言·python·算法
ForteScarlet2 小时前
Kotlin 2.4.20 现已发布,新特性多不多?
android·java·开发语言·开源·kotlin·jetbrains
萧瑟余晖2 小时前
Java深入解析篇六十二之安全机制详解
java·开发语言
菜鸟~noob2333 小时前
【电子战】 第01篇:噪声、门限与虚警/检测概率(PFA/PD)【含matlab代码】
开发语言·matlab
奇牙coding1233 小时前
GPT-6-Astra API 接入教程:OpenRouter 路由配置 + Python/curl 示例 + 静默降级踩坑
开发语言·python·gpt·ai
lzx_0024 小时前
C++11(一)
开发语言·c++·算法