rabbitmq的交换机类型以及他们的区别

RabbitMQ中有四种主要的交换机类型,它们是:Direct,Topic,Fanout,Headers。

  1. Direct(直连交换机):接收到消息后,会将消息发送到与消息的routing key完全匹配的队列上。Direct交换机的路由规则非常简单,可以直接使用队列名称作为routing key,将消息发送到指定的队列。

  2. Topic(主题交换机):接收到消息后,会将消息发送到与消息的routing key匹配的队列上。但是,它的routing key可以使用通配符进行模糊匹配。其中,通配符#匹配多个单词,*匹配一个单词。

  3. Fanout(扇形交换机):接收到消息后,会将消息发送到所有与该交换机绑定的队列上,忽略消息的routing key。Fanout交换机的路由规则非常简单,将所有的消息广播给绑定到该交换机上的队列。

  4. Headers(头交换机):接收到消息后,会根据消息的headers属性来匹配交换机与队列的条件,忽略消息的routing key。Headers交换机使用起来较少,通过headers属性来匹配发送消息的交换机与队列。

这四种交换机类型的区别在于消息的路由规则和匹配方式。不同的交换机类型适用于不同的场景,可以根据需要选择合适的交换机类型来实现消息的分发

相关推荐
武子康20 分钟前
Java-184 缓存实战:本地缓存 vs 分布式缓存(含 Guava/Redis 7.2)
java·redis·分布式·缓存·微服务·guava·本地缓存
ANYOLY6 小时前
分布式面试题库
分布式·面试·职场和发展
i***665012 小时前
分布式推理框架 xDit
分布式
哈哈哈笑什么12 小时前
分布式事务实战:订单服务 + 库存服务(基于本地消息表组件)
分布式·后端·rabbitmq
哈哈哈笑什么12 小时前
完整分布式事务解决方案(本地消息表 + RabbitMQ)
分布式·后端·rabbitmq
LDG_AGI12 小时前
【推荐系统】深度学习训练框架(十):PyTorch Dataset—PyTorch数据基石
人工智能·pytorch·分布式·python·深度学习·机器学习
tanxiaomi13 小时前
Redisson分布式锁 和 乐观锁的使用场景
java·分布式·mysql·面试
熊文豪15 小时前
【前瞻创想】Kurator:站在巨人肩膀上的分布式云原生创新实践
分布式·云原生·kurator
问道飞鱼16 小时前
【分布式知识】Redis-Shake 容器云部署完整指南
redis·分布式·redis-shake
milanyangbo18 小时前
从硬盘I/O到网络传输:Kafka与RocketMQ读写模型及零拷贝技术深度对比
java·网络·分布式·架构·kafka·rocketmq