python使用rabbitmq实现简单的消息转发
Posted 海的味道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python使用rabbitmq实现简单的消息转发相关的知识,希望对你有一定的参考价值。
准备:
1.下载elang语言的支持环境http://www.erlang.org/download.html (rabbitmq使用它开发的)
2.下载rabbitmq软件http://www.rabbitmq.com/releases/rabbitmq-server/(根据自己的系统选择)
3.安装elang,rabbitmq,并配置环境变量,我的是windows7,步骤大概如下:
a.新建变量:ERLANG_HOME=D:\\Program Files\\erl6.1,然后再path中添加%ERLANG_HOME%\\bin;
b.新建变量:RABBITMQ_SERVER=D:\\Program Files\\rabbitmq_server-3.3.4,然后再path中添加%RABBITMQ_SERVER%\\sbin;
c.运行sbin/rabbitmq-server.bat,启动RabbitMQ服务器效果如下图
用python操作rabbitmq
1.下载pika支持包(pip install pika)
2.消息发送接收采用的是生产者消费者模型
生成者方代码Productor.py
1 # __author__ = \'STEVEN\' 2 import pika 3 def b(): 4 #建立socket 5 connection = pika.BlockingConnection(pika.ConnectionParameters(host=\'localhost\')) 6 #声明一个管道 7 piple = connection.channel() 8 #创建一个队列 9 piple.queue_declare(\'hello\') 10 #发送消息 11 piple.basic_publish(exchange=\'\',routing_key=\'hello\',body=\'你好啊\') 12 print(\'[x] sent message..hello\') 13 connection.close() 14 b()
消费者方代码Consumer.py
1 # __author__ = \'STEVEN\' 2 import pika 3 #创建socket链接 4 connection = pika.BlockingConnection(pika.ConnectionParameters(\'localhost\')) 5 #创建管道 6 channel = connection.channel() 7 #创建队列 8 channel.queue_declare(\'hello\') 9 #声明回调函数 10 def callback(ch,method,properties,body): 11 print(\'[x] recieved message%r\'%body.decode()) 12 #如果接受到消息就调用回调函数,准备接受消息 13 channel.basic_consume(callback,queue=\'hello\',no_ack=True) 14 print(\'[*] is waiting for recieve mess press ctrl+c to eixt\') 15 #开始消费消息 16 channel.start_consuming()
以上是关于python使用rabbitmq实现简单的消息转发的主要内容,如果未能解决你的问题,请参考以下文章