python采用pika库使用rabbitmq总结,多篇笔记和示例
這一段時間學(xué)習(xí)了下rabbitmq,在學(xué)習(xí)的過程中,發(fā)現(xiàn)國內(nèi)關(guān)于python采用pika庫使用rabbitmq的資料很少,官網(wǎng)有這方面的資料,不過是都英文的。于是筆者結(jié)合自己的理解,就這方面內(nèi)容寫了一些示例,總共有七篇筆記,分享出來。
筆記依次是循序漸進(jìn)的,筆記內(nèi)貼出的代碼筆者都實際運行過,運行系統(tǒng)ubuntu 12.04,rabbitmq版本是2.7.1,python版本是2.7.3。
因為筆記里提到一些名詞,雖然叫法不一樣,不過都是表達(dá)同樣的事物,所以有必要先說明下,以免產(chǎn)生疑惑。主要是兩個名詞:
- producer 直譯為生成者,就是產(chǎn)生消息的東東,筆記里提到的發(fā)送者、發(fā)送端都是一個意思。如果把消息比喻成任務(wù),也可以理解為任務(wù)分配者。
- consumer 直譯為消費者,就是接收消息的東東 ,筆記里提到的接收者、接收端都是一個意思。如果把消息比喻成任務(wù),也可以理解為工作者。
1、ubuntu安裝rabbitmq和python的使用實現(xiàn)
這篇主要記錄了在ubuntu下安裝rabbitmq服務(wù)的過程和安裝python pika庫的過程,并演示了單向發(fā)送消息的工作方式。
2、python使用rabbitmq實例二,工作隊列
繼上一篇,演示了多個接收端情況下,消息發(fā)送的工作方式。
3、python使用rabbitmq實例三,交換機(jī)
前面兩篇的示例,都只使用了一個隊列,消息是依次發(fā)送給綁定到該隊列的接收端。如果要廣播出去,就要使用交換機(jī),本篇演示了交換機(jī)的工作方式。
4、python使用rabbitmq實例四,路由鍵
第三篇的消息是廣播出去的,所有接收端都會接收到,如果要精確指明消息的接收端,就要使用路由鍵,本篇主要演示了路由鍵的工作方式。
5、python使用rabbitmq實例五,路由鍵模糊匹配
第四篇的路由鍵是精確匹配的,有時用需要模糊匹配,本篇主要演示了路由鍵模糊匹配的工作方式。
6、python使用rabbitmq實例六,遠(yuǎn)程結(jié)果返回
前面五篇的消息都是發(fā)送出去就完事了,接收端并沒有將結(jié)果返回給發(fā)送端。有些情況下需要接收端將接收到的消息處理后再返回給發(fā)送端,本篇演示了這種情況的處理方式。
7、python使用rabbitmq實例七,相互關(guān)聯(lián)編號correlation id
上一篇只是發(fā)送單條消息,返回的結(jié)果自然是對應(yīng)該條消息,但是如果同時發(fā)出多條消息,就會返回多個結(jié)果,如何將發(fā)送的消息和返回的結(jié)果一一對應(yīng)起來呢?本篇演示了correlation id的工作方式,就是用來解決這個問題的。
?
轉(zhuǎn):http://blog.csdn.net/chenjiebin/article/details/8253433
總結(jié)
以上是生活随笔為你收集整理的python采用pika库使用rabbitmq总结,多篇笔记和示例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 散热效果更好,三星 Galaxy S23
- 下一篇: Python高级特性:迭代器和生成器