对于一个技术控而言,每一种技术自己都想尝试一下,学习众家之所长。今天我就来跟大家讲讲rabiitMQ消息队列。由于刚开始学习所以写篇博客,来巩固自己所学同时希望帮助用到的同学。
安装rabbitmq服务器
在自己的电脑上安装上rabbitmq 服务器
用Mac的小伙伴比较省事,
brew install rabbitmq
brew services start rabbitmq//后台运行rabbitmq
rabbitmq提供了可视化界面
http://localhost:15672/
用户名和密码都是guest
简单介绍一下安装,如果其他系统的小伙伴可以找度娘帮忙。
下面我将写个小程序简单的运用一下这个神器:
pip install pika
以python 代码为例,创建一个producer.py文件
import pika
#连接我们的服务器
connection = pika.BlockingConnection(
pika.ConnectParameters(host='127.0.0.1')
)
channel = connction.channel()
# durable=True,服务器重启时队列仍然存在
channel.queue_declare(queue='test', durable=True)
channel.basic_publish(exchange='',routing_key='test',body='Hello RabbitMQ,Nice to meet you.')
connction.close()
消息生产者有了,我们再写一个消息消费者consumer.py
前几行基本是一致的;
import pika
connection = pika.BlockingConnection(
pika.ConnectParameters(host='127.0.0.1')
)
channel = connction.channel()
# durable=True,服务器重启时队列仍然存在
channel.queue_declare(queue='test', durable=True)
def handel_function(ch, method, properties, body):
print 'receive data:',body
channel.basic_consume(handel_function, queue='test')
channel.start_consuming()