RabbitMQ -- Hello world
RabbitMQ使用AMQP通信协议(AMQP是一个提供统一消息服务的应用层标准协议,基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同开发语言等条件的限制。)。
安装
具体教程参考:http://www.rabbitmq.com/tutorials/tutorial-one-python.html
安装python的开发库
sudo pip install pika==0.9.8
安装rabbitmq服务
sudo apt-get install rabbitmq-server
启动rabbit服务
rabbitmq-server start
Hello World
发送
- 通过使用pika第三方库来连接,本例中为localhost本地连接。
- 通过queue_declare来创建一个消息队列
- 发送消息basic_publish
- 关闭链接close
#!/usr/bin/env python # coding=utf-8 import pika connection = pika.BlockingConnection(pika.ConnectionParameters(‘localhost‘)) channel = connection.channel() channel.queue_declare(queue=‘hello‘) channel.basic_publish(exchange=‘‘, routing_key=‘hello‘, body=‘hello world!‘) print ‘Sent "hello world"‘ connection.close()
接收
- 通过使用pika第三方库来连接,本例中为localhost本地连接。
- 通过queue_declare来创建一个消息队列(推荐,由于接收之前消息队列有可能并没有创建过)
- 指定消息队列和回调函数basic_consume
- 开始接受消息start_consuming
#!/usr/bin/env python # coding=utf-8 import pika def callback(ch, method, properties, body): print ‘receive %r‘%body connection = pika.BlockingConnection(pika.ConnectionParameters(‘localhost‘)) channel = connection.channel() channel.queue_declare(queue=‘hello‘) channel.basic_consume(callback, queue=‘hello‘, no_ack=True) channel.start_consuming()
时间: 2024-10-27 12:33:01