rabbitmq Direct交换机简介

在实际开发中,需求可能变得复杂,如消息的收发和处理。以支付系统为例,成功支付后需要改变订单状态并通知用户,而失败则不需要。为处理这种情况,提出了使用Direct交换机,它可以根据规则将消息路由到指定队列。绑定队列时,需要约定一个暗号,以确定消息的处理对象。如果同一个队列绑定到相同的键,那么所有消息都将发送给该队列,实现了定向广播的效果。这种交换机模式更加灵活,可以根据配置实现不同的定向效果。

创建一个direct类型的交换机

创建两个队列,再绑定上Routing Key

单元测试,根据交换机和Routing Key的关键字,创建消息到消息到交换机中

交换机发现两个队列都绑定了red这个key,然后发现两个消费者都对该消息进行了消费

上图可以看到,当发送的消息key指定为blue时,只有队列1收到了消息,且只有消费者1进行处理消息

相关推荐
liulilittle36 分钟前
C++ TAP(基于任务的异步编程模式)
服务器·开发语言·网络·c++·分布式·任务·tap
码字的字节38 分钟前
ZooKeeper在Hadoop中的协同应用:从NameNode选主到分布式锁实现
hadoop·分布式·zookeeper·分布式锁
武子康3 小时前
Java-80 深入浅出 RPC Dubbo 动态服务降级:从雪崩防护到配置中心秒级生效
java·分布式·后端·spring·微服务·rpc·dubbo
itLaity8 小时前
基于Kafka实现简单的延时队列
spring boot·分布式·kafka
qq_529835358 小时前
Zookeeper的简单了解
分布式·zookeeper·云原生
smileNicky9 小时前
RabbitMQ有多少种Exchange?
分布式·rabbitmq
你我约定有三9 小时前
RabbitMQ--消息丢失问题及解决
java·开发语言·分布式·后端·rabbitmq·ruby
Java初学者小白10 小时前
秋招Day19 - 分布式 - 分布式事务
java·分布式
程序员小羊!11 小时前
Zookeeper 3.6.3【详细技术讲解】整
分布式·zookeeper·云原生
Java水解13 小时前
RabbitMQ用法的6种核心模式全面解析
后端·rabbitmq