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属性来匹配发送消息的交换机与队列。

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

相关推荐
Alex艾力的IT数字空间6 小时前
设计既保持高性能又兼顾可移植性的跨平台数据结构
数据结构·分布式·算法·微服务·中间件·架构·动态规划
失散137 小时前
架构师级别的电商项目——2 电商项目核心需求分析
java·分布式·微服务·架构·需求分析
e***28298 小时前
RabbitMQ 客户端 连接、发送、接收处理消息
分布式·rabbitmq·ruby
2***57428 小时前
后端消息中间件对比,RabbitMQ与RocketMQ
分布式·rabbitmq·rocketmq
百***26638 小时前
RabbitMQ高级特性----生产者确认机制
分布式·rabbitmq
Q***f6358 小时前
后端消息队列学习资源,RabbitMQ+Kafka
学习·kafka·rabbitmq
sg_knight8 小时前
RabbitMQ 中的预取值(prefetch)详解:如何真正提升消费端性能?
java·spring boot·spring·spring cloud·消息队列·rabbitmq·预取值
菜鸡儿齐8 小时前
本地事务实效-分布式架构
分布式·架构
T***u3339 小时前
SpringBoot集成SkyWalking,分布式链路追踪
spring boot·分布式·skywalking
Bohemian—Rhapsody9 小时前
kafka主题(topic)数据保留时间设置
分布式·kafka