rabbitmq消息对列

三世轮回 提交于 2019-11-26 11:12:15

 

sender1.py

 1 # -*- coding:utf-8 -*-
 2 # @Author:Liu Guoyang
 3 # @Time  :2019/8/7 21:14
 4 # @File  :sender1.py
 5 
 6 
 7 import pika
 8 
 9 credentials = pika.PlainCredentials('alex', 'alex123')  # 服务端创建的用户名和密码
10 connection = pika.BlockingConnection(pika.ConnectionParameters(host="192.168.150.135", credentials=credentials))
11 # 建立了rabbit协议的通道
12 channel = connection.channel()
13 
14 # 声明一个queue
15 channel.queue_declare(queue='hello')
16 
17 # 发消息
18 channel.basic_publish(
19     exchange='',
20     routing_key='hello',  # 把消息发给名称为hello的队列
21     body='Hello World!'  # 发消息到队列,消息的内容
22 )
23 
24 print("[x] Sent 'Hello World!'")
25 connection.close()
sender1.py

 

receive1.py

 1 # -*- coding:utf-8 -*-
 2 # @Author:Liu Guoyang
 3 # @Time  :2019/8/7 23:43
 4 # @File  :receive1.py
 5 
 6 import pika
 7 import time
 8 
 9 credentials = pika.PlainCredentials('alex', 'alex123')
10 connection = pika.BlockingConnection(pika.ConnectionParameters(
11     '192.168.150.135', credentials=credentials))
12 
13 channel = connection.channel()
14 
15 # You may ask why we declare the queue again ‒ we have already declared it in our previous code.
16 # We could avoid that if we were sure that the queue already exists. For example if send.py program
17 # was run before. But we're not yet sure which program to run first. In such cases it's a good
18 # practice to repeat declaring the queue in both programs.
19 channel.queue_declare(queue='hello')
20 
21 
22 def callback(ch, method, properties, body):
23     print(" [x] Received %r" % body)
24 
25 
26 channel.basic_consume('hello', callback, False)
27 
28 print(' [*] Waiting for messages. To exit press CTRL+C')
29 channel.start_consuming()
receive1.py

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!