准备:

  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 

 # __author__ = 'STEVEN'
import pika
def b():
#建立socket
connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
#声明一个管道
piple = connection.channel()
#创建一个队列
piple.queue_declare('hello')
#发送消息
piple.basic_publish(exchange='',routing_key='hello',body='你好啊')
print('[x] sent message..hello')
connection.close()
b()

消费者方代码Consumer.py

 # __author__ = 'STEVEN'
import pika
#创建socket链接
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
#创建管道
channel = connection.channel()
#创建队列
channel.queue_declare('hello')
#声明回调函数
def callback(ch,method,properties,body):
print('[x] recieved message%r'%body.decode())
#如果接受到消息就调用回调函数,准备接受消息
channel.basic_consume(callback,queue='hello',no_ack=True)
print('[*] is waiting for recieve mess press ctrl+c to eixt')
#开始消费消息
channel.start_consuming()

python使用rabbitmq实现简单的消息转发的更多相关文章

  1. java操作rabbitmq实现简单的消息发送(socket编程的升级)

    准备: 1.下载rabbitmq并搭建环境(和python那篇一样:http://www.cnblogs.com/g177w/p/8176797.html) 2.下载支持的jar包(http://re ...

  2. Python控制window进行简单的消息弹窗

    有人提到可以用easygui 稍后尝试一下

  3. ios 消息转发初探

    有时候服务器的接口文档上一个数据写的是string类型,这时候你就会直接把它赋值给一个label. 问题来了,有时候这个string的确是string,没有问题,有时候又是NSNumber,当然不管三 ...

  4. netty实现消息转发服务

    1.结构图 2.消息服务器 消息服务器(SNS)由Http Netty Server(HNS)和WebSocket Netty Server(WNS)组成.HNS采用Netty Http+XML协议栈 ...

  5. Python操作rabbitmq消息队列持久化

    消息队列持久化 Python操作rabbit消息队列的持久化,如下: # 创建一个名为balance的队列,对queue进行durable持久化设为True(持久化第一步)channel.queue_ ...

  6. 使用Python学习RabbitMQ消息队列

    rabbitmq基本管理命令: 一步启动Erlang node和Rabbit应用:sudo rabbitmq-server 在后台启动Rabbit node:sudo rabbitmq-server ...

  7. python【第十一篇】消息队列RabbitMQ、缓存数据库Redis

    大纲 1.RabbitMQ 2.Redis 1.RabbitMQ消息队列 1.1 RabbitMQ简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议 ...

  8. python中RabbitMQ的使用(安装和简单教程)

    1,简介 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现的产品,RabbitMQ是一个消息代理,从"生产者"接收消息 ...

  9. RabbitMQ 简单的消息发送与接收

    RabbitMQ是建立在AMQP(Advanced Message Queuing Protocol,高级消息队列协议)基础上的,而AMQP是建立在TCP协议之上的. 因此,RabbitMQ是需要建立 ...

随机推荐

  1. C++编程规范纲要要点小结

    这是一本好书, 可以让你认清自己对C++的掌握程度. 看完之后,给自己打分,我对C++了解多少? 答案是不足20分. 对于我自己是理所当然的问题, 就不提了, 记一些有启发的条目和细节: (*号表示不 ...

  2. jQuery param()作用与使用方法

    $.param()方法是serialize()方法的核心,用来对一个数组或对象按照key/value进行序列化. $.param(obj) 返回 :string: 说明:将jquery对象按照name ...

  3. progressbar请求数据 加载demo1

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout ...

  4. hibernate双向关联

    双向关联中最好的设置是一端为inverse=true,一端为inverse=false. falses维护,true不维护,设置多的一方维护(false) inverse属性就是用来规定是由谁来维护这 ...

  5. 关于JavaScript的事件触发

    突然知道JavaScript底层是怎么实现事件触发的,找到一个博客,功力不够,看的很迷糊,记载这里吧,后面再研究. [探讨]javascript事件机制底层实现原理

  6. POJ 2823 Sliding Window (滑动窗口的最值问题 )

    Sliding Window Time Limit: 12000MS   Memory Limit: 65536K Total Submissions: 41264   Accepted: 12229 ...

  7. Codeforces Round #363 (Div. 2) B. One Bomb —— 技巧

    题目链接:http://codeforces.com/contest/699/problem/B 题解: 首先统计每行每列出现'*'的次数,以及'*'出现的总次数,得到r[n]和c[m]数组,以及su ...

  8. 自动化测试框架PatatiumWebUi

    PatatiumWebUi 官网:https://git.oschina.net/zhengshuheng/PatatiumWebUi 这是Java编写的框架,基于Selenium.TestNG等技术 ...

  9. cnn汉字识别 tensorflow demo

    # -*- coding: utf-8 -*- import tensorflow as tf import os import random import tensorflow.contrib.sl ...

  10. python 二分法例子及冒泡排序

    #!/usr/bin/env python #-*- coding:utf-8 -*- def binary_search(source_data,find_nu): mid = len(source ...