RabbitMQ中Direct交换机的用法

前言:比如我们的支付完成之后需要进行修改支付状态还要完成短信通知用户需要同时并发两条指令我们可以使用direct交换机进行指定两个不同的业务去完成这两件事

比如我们现在有direct.queue1/direct.queue2两个消息队列,一个direct交换机

我们创建完成两个队列之后需要将交换机进行绑定到对应的队列,绑定时我们需要将key写进去,因为要根据不同的key找到指定的队列去完成不同的消息业务

使用java操作

消费者监听代码

复制代码
    //使用direct交换机进行消息发送
    @RabbitListener(queues = "direct.queue1")
    public void listenDirectQueue1(String msg) throws InterruptedException {
        System.out.println("消费者收到DirectQueue11111111的消息:"+msg);
        Thread.sleep(20);
    }
    @RabbitListener(queues = "direct.queue2")
    public void listenDirectQueue2(String msg) throws InterruptedException {
        System.out.println("消费者收到DirectQueue2222222222222的消息:"+msg);
        Thread.sleep(200);
    }

发送者代码

复制代码
    //使用Direct交换机进行消息转发
    @Test
    void testDirect() {
        String exchangeName = "hmall.direct";
        String msg = "blue";
        rabbitTemplate.convertAndSend(exchangeName, "blue",msg);
    }
相关推荐
掘金-我是哪吒20 分钟前
分布式微服务系统架构第132集:Python大模型,fastapi项目-Jeskson文档-微服务分布式系统架构
分布式·python·微服务·架构·系统架构
程序员学习随笔1 小时前
分布式 ID 生成的五种方法:优缺点与适用场景
分布式
hello1114-1 小时前
Redis学习打卡-Day3-分布式ID生成策略、分布式锁
redis·分布式·学习
掘金-我是哪吒2 小时前
分布式微服务系统架构第129集:redis安装部署文档
redis·分布式·微服务·架构·系统架构
计算机毕设定制辅导-无忧学长3 小时前
RabbitMQ 消息模式实战:从简单队列到复杂路由(一)
分布式·rabbitmq·ruby
MZWeiei5 小时前
Kafka 生产者工作流程详解
大数据·分布式·kafka
好吃的肘子6 小时前
Zookeeper 入门(二)
linux·分布式·zookeeper
后端码匠8 小时前
【Hadoop】伪分布式安装
大数据·hadoop·分布式
掘金-我是哪吒8 小时前
分布式微服务系统架构第134集:笔记1运维服务器经验,高并发,大数据量系统
运维·笔记·分布式·微服务·系统架构
计算机毕设定制辅导-无忧学长9 小时前
Spring Boot 与 RabbitMQ 的深度集成实践(一)
spring boot·rabbitmq·java-rabbitmq