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);
    }
相关推荐
Wang's Blog1 小时前
Kafka: 消费者核心机制
分布式·kafka
学海_无涯_苦作舟3 小时前
分布式事务的解决方案
分布式
ZePingPingZe5 小时前
秒杀-库存超卖&流量削峰
java·分布式
Wang's Blog7 小时前
Kafka: HTTPS证书申请集成指南
分布式·https·kafka
Wang's Blog9 小时前
Kafka: 消费者高级实践之分区控制、多线程处理与 Offset 管理
分布式·kafka
老鱼说AI10 小时前
经典论文精读第一期:DeepSeek-R1-Zero ——RL奇迹
人工智能·分布式·深度学习·神经网络·自然语言处理·nlp·transformer
闲人编程11 小时前
OpenTelemetry分布式追踪
分布式·wpf·trace·追踪·open telemetry·codecapsule
BUTCHER512 小时前
【漏洞扫描】ZooKeeper 未授权访问
分布式·zookeeper·云原生
苦学编程的谢12 小时前
RabbitMQ_9_RabbitMQ应用问题
分布式·rabbitmq
武子康12 小时前
大数据-192 DataX 3.0 架构与实战:Reader/Writer 插件模型、Job/TaskGroup 调度、speed/errorLimit 配置速
大数据·分布式·后端