消息队列是一种常用的开发中间件,适用于异步、分布式、解耦合等业务场景中,而RabbitMQ是其中一种常用的消息队列,今天来总结一下RabbitMQ在python端的使用方法。
1.发送接收基础
python一般使用pika库来操作RabbitMQ,需要先用pip安装。
#1 建立连接
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) # 建立一个连接
channel = connection.channel() # 建立此连接下的一个频道
channel.queue_declare(queue='hello') # 声明一个队列
#2 发送消息
channel.basic_publish(exchange='', routing_key='hello', body='Hello World!')
#3 接收消息
channel.basic_consume(on_message_callback=callback, queue='hello') # 声明消息处理回调函数
channel.start_consuming() # 开始消费消息,并进入死循环
def callback(channel, method, properties, body):
print("Received %r" % (body,)) # body是消息体,根据具体业务进行解析处理
time.sleep(5) # 模拟处理消息
channel.basic_ack(delivery_tag = m