python 操作 rabbitmq 发送接收消息
第一步创建python项目使用pycharm创建python项目,并创建好python虚拟环境第二步创建rabbit_send_receive.py文件:#!/usr/bin/env python# encoding: utf-8# @Time: 2019/12/20 5:48 AM# @Author: liuhuanchaoimport pikaclas...
·
第一步创建python项目
使用pycharm创建python项目,并创建好python虚拟环境
第二步创建rabbit_send_receive.py文件:
#!/usr/bin/env python
# encoding: utf-8
# @Time : 2019/12/20 5:48 AM
# @Author : liuhuanchao
import pika
class RabbitMQ(object):
def __init__(self, addr, rabbitMqName):
self.mqAddr = addr
self.msgQueueName = rabbitMqName
def msg_on_recv(self, ch, mothod, properties, msg):
print("[Consumer] recv %s" % msg)
def msg_start(self):
print("[Consumer] waiting for msg")
self.mqParam = pika.ConnectionParameters(self.mqAddr)
try:
self.connection = pika.BlockingConnection(self.mqParam)
self.channel = self.connection.channel()
self.channel.queue_declare(queue=self.msgQueueName)
self.channel.basic_consume(self.msgQueueName, self.msg_on_recv)
self.channel.start_consuming()
except pika.exceptions.AMQPError as e:
print('AMQPError {0} , {1}'.format(self.mqAddr, e))
def msg_send(self, msg):
print("[Producer] send %s" % msg)
self.mqParam = pika.ConnectionParameters(self.mqAddr)
try:
self.connection = pika.BlockingConnection(self.mqParam)
self.channel = self.connection.channel()
self.channel.queue_declare(queue=self.msgQueueName)
self.channel.basic_publish(exchange='', routing_key=self.msgQueueName, body=msg)
except pika.exceptions.AMQPError as e:
print('AMQPError {0} , {1}'.format(self.mqAddr, e))
第三步创建生产者(send.py):
from rabbit_send_receive import *
obj = RabbitMQ("localhost", 'my_queue')
obj.msg_send('hello liuhuanchao')
第四步创建消费者(receive.py)
from rabbit_send_receive import *
obj = RabbitMQ("localhost", 'my_queue')
obj.msg_start()
第五步运行
进入都项目目录:
发送消息:
接收消息:
更多推荐
所有评论(0)