RabbitMQ 小節

rabbit MQ 常用模式


1.簡單模式
一個生產者,一個消費者,不需要設置交換機(使用默認的交換機)

2.工作隊列
一個生產者,多個消費者,不需要設置交換機(使用默認的交換機)

3.發佈訂閱模式
一個生產者,多個消費者,需要設置交換機的類型爲fanout,並且交換機和隊列進行綁定,當發發送消息到交換機後,交換機會將信息發送到綁定的隊列

4.路由模式
一個生產者,多個消費者,需要設置交換機的類型爲direct,並且交換機和隊列進行綁定,並且指定routing key 當發發送消息到交換機後,交換機會根據routing key將信息發送到綁定的隊列

5.速配符模式
一個生產者,多個消費者,需要設置交換機的類型爲topic,並且交換機和隊列進行綁定,並且指定routing key 當發發送消息到交換機後,交換機會根據routing key將信息發送到綁定的隊列

 

rabbit mq運行流程

簡單與工作對模式
生產者發送消息
    1.生產者創建連接(connection),開啓一個信道/頻道(channel),連接到rabbitMQ Broker
    2.聲明隊列並設置屬性,如是否排它,是否持久化,是否自動刪除
    3.將路由鍵(空字符串)與隊列綁定起來
    4.發送消息至rabbitMQ Broker
    5.關閉信道/頻道
    6.關閉連接
    
消費者接收消息    
    1.消費者創建連接(connection),並開啓一個信道/頻道(channel),連接到rabbitMQ Broker
    2.向Broker請求消費相應隊列中的消息,設置相應的回調函數
    3.等待Broker迴應閉關投遞相應隊列中的消息,消費者接受消息
    4.確認(ack,自動確認)接收到的消息
    5.rabbitMQ從隊列中刪除相應已經被確認的消息
    6.關閉信道/頻道
    7.關閉連接
    
發佈訂閱/路由/通配符模式

以下講的是關於路由的模式,其他兩個都相似,就是沒有一個路由key


    生產者
    1.生產者創建連接(connection),開啓一個信道/頻道(channel)
    2.聲明交換機將交換機屬性設置爲direct
    2.聲明隊列並設置屬性,如是否排它,是否持久化,是否自動刪除
    3.將路由鍵與隊列綁定起來,並制定路由 key
    4.發送消息前要制定basicPublish中交換機的名字,路由key
    5.發送消息
    5.關閉信道/頻道
    6.關閉連接
    
    消費者
    1.生產者創建連接(connection),開啓一個信道/頻道(channel)
    2.聲明交換機將交換機屬性設置爲direct
    2.聲明隊列並設置屬性,如是否排它,是否持久化,是否自動刪除
    3.隊列綁定交換機,並綁定路由key,不綁定路由key將拿不到信息
    4.創建消費者並設置消息處理
    5.監聽消息,basiccConsume要指定交換機的名字
    
    
    
    
    
    
    
    
    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章