一、常用的交互机有三种:
1. Fanout Exchange
扇型交换机,也可以叫广播交换机,无视路由键,在接收到消息后,会直接转发到绑定它的所有队列
2. Direct Exchange
直连型交互机,根据RoutingKey路由到不同的队列
3. Topic Exchange
主题交换机,跟直连交换机流程差不多,但它的路由键和绑定键之间有规则
规则如下:
- ( * (一个星号)) 用来表示一个单词,表示两点之间一个占位单词
- (# (一个#))用来表示多个单词(0个或多个),代表后面所有,匹配所有
- 当一个队列的绑定键为 “#”(井号) 的时候,这个队列将会无视消息的路由键,接收所有的消息。
- 当 * (星号) 和 # (井号) 这两个特殊字符都未出现的时候,此时主题交换机就有直连交换机的功能。
- 如果只有 # ,它就实现了扇形交换机的功能。
所以主题交换机也就实现了扇形交换机的功能,和直连交换机的功能
二、交换机与队列之间的基本流程
黄色圆圈是消息推送服务,会将消息推送给RabbitMq的服务器,然后经过服务器的交换机、队列等各种关系将数据处理后,最终由消费者获取对应的监听信息