RabbitMQie消息列隊整理
阿新 • • 發佈:2018-09-17
rabbit 環境 art blocking 發送 col exc 。。 messages
使用方法過程,這兒只做了windows平臺教程
先安裝Erlang 編程軟件,然後設置環境變量,在安裝RabbimMQ ,這兒我下載了一個版本不行,後來換了最新片就好了,以後在使用過程 中如果有問題 ,可以換版本試一下,這是個坑。。然後 pip install pipk
在編程器中粘上下代碼測試 先是服務端:
import pika #連接隊列服務器 connection = pika.BlockingConnection(pika.ConnectionParameters(host=‘localhost‘)) channel = connection.channel()View Code#創建隊列。有就不管,沒有就自動創建 channel.queue_declare(queue=‘hello‘) #使用默認的交換機發送消息。exchange為空就使用默認的 channel.basic_publish(exchange=‘‘, routing_key=‘hello‘, body=‘Hello 201!‘) print(" [x] Sent ‘Hello World!‘") connection.close()
在另一個文件粘上客服端:
import pika importView Codetime # 連接服務器 connection = pika.BlockingConnection(pika.ConnectionParameters(host=‘localhost‘)) channel = connection.channel() # rabbitmq消費端仍然使用此方法創建隊列。這樣做的意思是:若是沒有就創建。和發送端道理道理。目的是為了保證隊列一定會有 channel.queue_declare(queue=‘hello‘) # 收到消息後的回調 def callback(ch, method, properties, body): print("我收到了,正在等。。") time.sleep(10) print(" [x] Received %r" % body) channel.basic_consume(callback, queue=‘hello‘, #no_ack=True ) print(‘ [*] Waiting for messages. To exit press CTRL+C‘) channel.start_consuming()
------------------------------------------------------------------------------
以下是註釋:
channel.basic_consume(callback,
queue=‘hello‘,
#no_ack=True 如果取消註釋就會不等反應,如果客
#服端開閉,沒有外理的消息會丟失
)
在安裝rabbitmq文件夾下有個叫rebbitmqctl的命令可以管裏查看消息隊列
RabbitMQie消息列隊整理