日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

RabbitMQ三种Exchange模式(fanout,direct,topic)的性能比较

發(fā)布時間:2024/4/17 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RabbitMQ三种Exchange模式(fanout,direct,topic)的性能比较 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一.Direct Exchange

任何發(fā)送到Direct Exchange的消息都會被轉(zhuǎn)發(fā)到RouteKey中指定的Queue

1.一般情況可以使用rabbitMQ自帶的Exchange:”"(該Exchange的名字為空字符串,下文稱其為default Exchange)。

2.這種模式下不需要將Exchange進(jìn)行任何綁定(binding)操作

3.消息傳遞時需要一個“RouteKey”,可以簡單的理解為要發(fā)送到的隊(duì)列名字。

4.如果vhost中不存在RouteKey中指定的隊(duì)列名,則該消息會被拋棄。

?

二.Fanout Exchange?

?

任何發(fā)送到Fanout Exchange的消息都會被轉(zhuǎn)發(fā)到與該Exchange綁定(Binding)的所有Queue上。

1.可以理解為路由表的模式

2.這種模式不需要RouteKey

3.這種模式需要提前將Exchange與Queue進(jìn)行綁定,一個Exchange可以綁定多個Queue,一個Queue可以同多個Exchange進(jìn)行綁定。

4.如果接受到消息的Exchange沒有與任何Queue綁定,則消息會被拋棄。

?

三.Topic Exchange

?

任何發(fā)送到Topic Exchange的消息都會被轉(zhuǎn)發(fā)到所有關(guān)心RouteKey中指定話題的Queue上

1.這種模式較為復(fù)雜,簡單來說,就是每個隊(duì)列都有其關(guān)心的主題,所有的消息都帶有一個“標(biāo)題”(RouteKey),Exchange會將消息轉(zhuǎn)發(fā)到所有關(guān)注主題能與RouteKey模糊匹配的隊(duì)列。

2.這種模式需要RouteKey,也許要提前綁定Exchange與Queue。

3.在進(jìn)行綁定時,要提供一個該隊(duì)列關(guān)心的主題,如“#.log.#”表示該隊(duì)列關(guān)心所有涉及l(fā)og的消息(一個RouteKey為”MQ.log.error”的消息會被轉(zhuǎn)發(fā)到該隊(duì)列)。

4.“#”表示0個或若干個關(guān)鍵字,“*”表示一個關(guān)鍵字。如“l(fā)og.*”能與“l(fā)og.warn”匹配,無法與“l(fā)og.warn.timeout”匹配;但是“l(fā)og.#”能與上述兩者匹配。

5.同樣,如果Exchange沒有發(fā)現(xiàn)能夠與RouteKey匹配的Queue,則會拋棄此消息。

?http://hwcrazy.com/2a31095868c811e3ad76000d601c5586/group/free_open_source_project/

轉(zhuǎn)載于:https://www.cnblogs.com/tianciliangen/p/4199182.html

總結(jié)

以上是生活随笔為你收集整理的RabbitMQ三种Exchange模式(fanout,direct,topic)的性能比较的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。