java - rabbitMQ的六種工作模式

一、簡單模式

概念:一個生產端對應一個消費端。生產端產生消息,然後將消息先發送給交換機,交換機將消息交給隊列,消費端監聽到之後,將消息從隊列中取出。

示例:1對1聊天

二、工作模式

概念:一個生產端多個消費端。生產端產生消息並將消息先交由交換機,交換機放入隊列,多個消費端進行爭搶,誰搶到,消息便是誰的。

示例:搶票

三、訂閱模式

概念一個生產端多個消費端。生產端產生消息,然後將消息發送給交換機,交換機給每一個隊列都發送消息,最終多個消費端都會得到消息。

示例:羣聊

四、路由模式

概念:一個生產端多個消費端。生產端產生消息併發送給交換機,交換機將消息發送給對應的隊列(根據對應的信息),一個隊列對應一個消費端。核心概念是,將一份數據發送給指定的消費端。

示例:項目中的error報錯

五、主題模式

概念:一個生產端多個消費端。特殊的路由模式。生產端產生消息併發送給交換機,交換機將消息發送給對應的隊列(根據 * 等特殊符號),指定對應的隊列,最後每個隊列所對應的消費端得到數據。

示例:羣發

六、RPC模式

概念:一個生產端一個消費端。跟其餘五種的區別:RPC模式的生產端將消息發出後,需要收到消息端的回覆。

運行原理:生產端產生消息後,消息上面攜帶有對應的消息端的隊列,還有消費端收到消息後所要返回數據需要使用的隊列。這樣便能使消費端發送回覆給生產端的時候,生產端知道監聽哪個隊列。

示例:QQ聊天

發佈了5 篇原創文章 · 獲贊 3 · 訪問量 1402
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章