Rabbitmq打怪升級(jí)之路(八)Work queues-工作隊(duì)列模式

簡書:亞武de小文 【原創(chuàng):轉(zhuǎn)載請(qǐng)注明出處】

工作隊(duì)列模式(Work queues)

LengToo上學(xué).png
RabbitMQ有以下幾種工作模式 :
  • Work queues
  • Publish/Subscribe
  • Routing
  • Topic
  • Headers
  • RPC

Work queues
模型圖
[亞武de小文]工作隊(duì)列模型圖.png
  • 說明:
    Producer:生產(chǎn)者
    Consumer01:消費(fèi)者01
    Consumer02:消費(fèi)者02
    Queue:消息隊(duì)列
應(yīng)用場(chǎng)景
  • 對(duì)于 任務(wù)過重或任務(wù)較多情況使用工作隊(duì)列可以提高任務(wù)處理的速度。
工作流程與測(cè)試
  • 說明:
    work queues與生產(chǎn)者與消費(fèi)者程序相比,多了一個(gè)消費(fèi)端,兩個(gè)消費(fèi)端共同消費(fèi)同一個(gè)隊(duì)列中的消息。

  • 測(cè)試:
    1、使用程序,啟動(dòng)多個(gè)消費(fèi)者。


    啟動(dòng)多個(gè)消費(fèi)者.png

2、生產(chǎn)者發(fā)送多個(gè)消息。


生產(chǎn)者發(fā)送信息.png
  • 結(jié)果:
    1、一條消息只會(huì)被一個(gè)消費(fèi)者接收,如下圖;


    發(fā)布信息.png

    消費(fèi)者接收消息.png

    消費(fèi)者01接收消息.png

2、rabbit采用輪詢的方式將消息是平均發(fā)送給消費(fèi)者的;
3、消費(fèi)者在處理完某條消息后,才會(huì)收到下一條消息。

【多人協(xié)作干活】

代碼

【參考生產(chǎn)者與消費(fèi)者模型代碼】


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過簡信或評(píng)論聯(lián)系作者。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容