rabbitmq Direct交换机简介

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

创建一个direct类型的交换机

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

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

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

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

相关推荐
lang201509282 小时前
深入解析Kafka核心:Partition类源码揭秘
分布式·kafka·linq
Blossom.1182 小时前
基于图神经网络+大模型的网络安全APT检测系统:从流量日志到攻击链溯源的实战落地
人工智能·分布式·深度学习·安全·web安全·开源软件·embedding
梦里不知身是客113 小时前
spark如何调节jvm的连接等待时长
大数据·分布式·spark
梦里不知身是客114 小时前
spark的血脉机制
大数据·分布式·spark
Query*4 小时前
分布式消息队列kafka【六】—— kafka整合数据同步神器canal
分布式·kafka
2301_807288634 小时前
MPRPC项目(第七天,rpcprovider分发rpc服务)
网络·分布式·rpc
L、2184 小时前
深入实战:使用 Platform Channel 实现 Flutter 与 OpenHarmony 原生能力互通
分布式·flutter·harmonyos
Cat God 0074 小时前
Kafka单机搭建(二)
分布式·kafka·linq
kite01214 小时前
Gin 与消息队列集成:使用 RabbitMQ 处理异步任务
golang·rabbitmq·gin