rabbitmq篇之浅谈rabbitmq的三种交换模式

2020-03-02  本文已影响0人  writeanewworld

1.rabbitmq的三种交换模式

.direct 默认的
.topic
.fonout 最省事的

2.三种模式的路由算法思想

direct(直接匹配):
direct交换模式是rabbitmq的默认交换模式,在rabbitmq中producer产生message并不会直接进入到queue中,而是在producer与queue之间有一个exchange,exchange会与queue进行binding,并有一个binding_key,当producer将message给exchage时会生成一个routing_key(指定这个消息的路由规则,决定消息流向哪里),routing_key会匹配binding_key决定消息流向哪里。


image.png

topic(主题匹配订阅)
这里binding_key的命名有模糊匹配的意思,使用 . #来进行匹配,当与routing_key匹配上了,消息也就分发出去了


image.png

例子:rounting_key 为 “quick.orange.rabbit”将会发送到Q1和Q2中
rounting_key 为”lazy.orange.rabbit.hujj.ddd”会被投递到Q2中,#匹配0个或多个单词。

fontout(广播订阅):
这个跟routing_key没有啥关系,直接向所有的消费者发布消息,但是只有消费者将队列绑定到该路由器才能收到消息

上一篇 下一篇

猜你喜欢

热点阅读