第三篇說明了關於交換機的使用,已經能實現給全部接收端發送消息,可是若是須要自由定製,有的消息發給其中一些接收端,有些消息發送給另一些接收端,要怎麼辦呢?這種狀況下就要用到路由鍵了。html
路由鍵的工做原理:每一個接收端的消息隊列在綁定交換機的時候,能夠設定相應的路由鍵。發送端經過交換機發送信息時,能夠指明路由鍵 ,交換機會根據路由鍵把消息發送到相應的消息隊列,這樣接收端就能接收到消息了。python
這邊繼上一篇,仍是用send.py和receive.py來模擬實現路由鍵的功能。send.py表示發送端,receive.py表示接收端。實例的功能就是將info、warning、error三種級別的信息發送到不一樣的接收端。spa
send.py代碼分析命令行
和上一篇相比,改動點主要在兩個方面:code
1htm 2rabbitmq 3隊列 4ci 5路由 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
receive.py代碼分析
和第三篇相比,改動點主要在三個方面:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
|
打開兩個終端,一個運行代碼python receive.py info warning,表示只接收info和warning的消息。另一個終端運行send.py,能夠觀察到接收終端只接收到了info和warning的消息。若是打開多個終端運行receive.py,並傳入不一樣的路由鍵參數,能夠看到更明顯的效果。
當接收端正在運行時,能夠使用rabbitmqctl list_bindings來查看綁定狀況。
參考文章:http://www.rabbitmq.com/tutorials/tutorial-four-python.html