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
相关推荐
lljss202014 小时前
C# 每个chartArea显示最小值、平均值、最大值
开发语言·c#
yzpyzp15 小时前
kotlin的函数前面增加suspend关键字的作用
android·开发语言·kotlin
jiet_h15 小时前
Android Kotlin ObjectAnimator 和 ValueAnimator 全面解析
android·开发语言·kotlin
Q_Q196328847515 小时前
python+springboot大学生心理测评与分析系统 心理问卷测试 自动评分分析 可视化反馈系统
开发语言·spring boot·python·django·flask·node.js·php
Android技术之家15 小时前
Kotlin与Compose:Android开发的现代化变革
android·java·开发语言·kotlin
十八旬15 小时前
【超简单】后端入门案例-基于SpringBoot+MyBatis-plus+MySQL图书管理系统
java·开发语言·idea·intellij idea·项目实战
0_0梅伊阁诗人15 小时前
Redis
开发语言·笔记·python
wearegogog12315 小时前
C#与Twincat 2 实现上位机控制软PLC功能
开发语言·c#
军训猫猫头16 小时前
12.NModbus4在C#上的部署与使用 C#例子 WPF例子
开发语言·c#·wpf
Eiceblue16 小时前
使用 C# 设置 Excel 单元格格式
开发语言·后端·c#·.net·excel