码迷,mamicode.com
首页 > 编程语言 > 详细

python使用rabbitmq实现简单的消息转发

时间:2018-01-02 15:23:45      阅读:490      评论:0      收藏:0      [点我收藏+]

标签:print   cal   publish   调用   ctr   product   parameter   cto   www   

准备:

  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实现简单的消息转发

标签:print   cal   publish   调用   ctr   product   parameter   cto   www   

原文地址:https://www.cnblogs.com/g177w/p/8176797.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!