標籤:print cal publish 調用 ctr product parameter cto www
準備:
1.下載elang語言的支援環境http://www.erlang.org/download.html (rabbitmq使用它開發的)
2.下載rabbitmq軟體http://www.rabbitmq.com/releases/rabbitmq-server/(根據自己的系統選擇)
3.安裝elang,rabbitmq,並配置環境變數,我的是windows7,步驟大概如下:
a.建立變數:ERLANG_HOME=D:\Program Files\erl6.1,然後再path中添加%ERLANG_HOME%\bin;
b.建立變數:RABBITMQ_SERVER=D:\Program Files\rabbitmq_server-3.3.4,然後再path中添加%RABBITMQ_SERVER%\sbin;
c.運行sbin/rabbitmq-server.bat,啟動RabbitMQ伺服器效果如
用python操作rabbitmq
1.下載pika支援包(pip install pika)
2.訊息發送接收採用的是生產者消費者模型
產生者方代碼Productor.py
1 # __author__ = ‘STEVEN‘ 2 import pika 3 def b(): 4 #建立socket 5 connection = pika.BlockingConnection(pika.ConnectionParameters(host=‘localhost‘)) 6 #聲明一個管道 7 piple = connection.channel() 8 #建立一個隊列 9 piple.queue_declare(‘hello‘)10 #發送訊息11 piple.basic_publish(exchange=‘‘,routing_key=‘hello‘,body=‘你好啊‘)12 print(‘[x] sent message..hello‘)13 connection.close()14 b()
消費者方代碼Consumer.py
1 # __author__ = ‘STEVEN‘ 2 import pika 3 #建立socket連結 4 connection = pika.BlockingConnection(pika.ConnectionParameters(‘localhost‘)) 5 #建立管道 6 channel = connection.channel() 7 #建立隊列 8 channel.queue_declare(‘hello‘) 9 #聲明回呼函數10 def callback(ch,method,properties,body):11 print(‘[x] recieved message%r‘%body.decode())12 #如果接受到訊息就調用回呼函數,準備接受訊息13 channel.basic_consume(callback,queue=‘hello‘,no_ack=True)14 print(‘[*] is waiting for recieve mess press ctrl+c to eixt‘)15 #開始消費訊息16 channel.start_consuming()
python使用rabbitmq實現簡單的訊息轉寄