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);
    }
相关推荐
YDS82919 小时前
SpringCloud —— MQ的可靠性保障和延迟消息
后端·spring·spring cloud·rabbitmq
CRUD酱20 小时前
微服务分模块后怎么跨模块访问资源
java·分布式·微服务·中间件·java-ee
回家路上绕了弯20 小时前
定时任务实战指南:从单机到分布式,覆盖Spring Scheduler/Quartz/XXL-Jo
分布式·后端
rchmin21 小时前
开源分布式ID生成方案接入介绍
分布式·开源
西***63471 天前
赋能指挥中枢:分布式KVM坐席协作系统技术与应用
分布式
Tony Bai1 天前
【分布式系统】01 为何分布式?—— Vibe Coding 时代的系统设计哲学与我们的远征地图
分布式
Java水解1 天前
2026Java常见面试题及答案汇总
后端·rabbitmq
云技纵横1 天前
订票系统高并发实战:基于 ZooKeeper 的分布式锁、选座与幂等回滚(Java/Curator)
分布式·zookeeper·java-zookeeper
disgare1 天前
关于分布式系统 RPC 中高可用功能的实现
java·分布式
小马爱打代码1 天前
Kafka 偏移量(Offset):消费者如何记住消费位置?
分布式·kafka