交换机之-fanout-模式
2025-4-20
| 2025-4-20
Words 819Read Time 3 min
type
status
date
slug
summary
tags
category
icon
password

交换机作用

之前创建队列的时候,使用的是默认交换机,由一个消费者消费消息,要么使用自动应答要么使用手动应答的方式完成消息消费,之后消息就从队列中删除了。这种只有一个消费者的叫做简单模式,也叫做工作模式。
notion image
image-20230615142515496
有交换机的情况下,可以通过交换机发送到多个队列,这样一个消息就可以被多个消费者消费。

交换机介绍

MQ发送消息的逻辑是,生产者把消息发送到交换机,交换机的工作是接收 MQ 发送过来的消息,然后把消息推入队列,至于该放到哪个队列中,还是说丢弃他们,这就由交换机的类型来决定,这样实现的场景就多了。可以根据路由 key 来决定要把消息放在哪个队列中。
notion image

Fanout 介绍

Fanout 这种类型很简单,它是将所有消息广播到它知道的所有队列中。类似于群组一样。
代码演示,一条消息由多个消费者消费
都指定一个交换机,并且 rootKey 是一样的,这样都可以接收到消息。

消费者 1

消费者 2

生产者

结果

生产者发送一个消息,两个消费者一起消费
notion image
notion image
notion image

总结

fonout 模式下,只要绑定到一个交换机上,不管 rountKey 是否一样,消费者都能接收到消息,也就是广播模式。
交换机之Direct模式交换数字-中等
Loading...