前言:這次整理寫一篇關(guān)于rabbitMQ的博客,相比上一篇redis,感覺rabbitMQ難度是提高不少。這篇博客會插入一些英文講解,不過不難理解的。rabbitMQ的下載與安裝,請參考redis&rabbitMQ安裝。
rabbitMQ是消息隊(duì)列;想想之前的我們學(xué)過隊(duì)列queue:threading queue(線程queue,多個(gè)線程之間進(jìn)行數(shù)據(jù)交互)、進(jìn)程Queue(父進(jìn)程與子進(jìn)程進(jìn)行交互或者同屬于同一父進(jìn)程下的多個(gè)子進(jìn)程進(jìn)行交互);如果兩個(gè)獨(dú)立的程序,那么之間是不能通過queue進(jìn)行交互的,這時(shí)候我們就需要一個(gè)中間代理即rabbitMQ.
一、簡單的rabbitMQ隊(duì)列通信
由上圖可知,數(shù)據(jù)是先發(fā)給exchange交換器,exchage再發(fā)給相應(yīng)隊(duì)列。pika模塊是python對rabbitMQ的API接口。接收端有一個(gè)回調(diào)函數(shù),一接收到數(shù)據(jù)就調(diào)用該函數(shù)。一條消息被一個(gè)消費(fèi)者接收后,該消息就從隊(duì)列刪除。OK,了解上面的知識后,先來看看一個(gè)簡單的rabbitMQ列隊(duì)通信。
send端:
網(wǎng)友評論