python操作RabbiMQ
2016-01-22 22:03
274 查看
RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循MozillaPublicLicense开源协议。
MQ全称为MessageQueue,消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
puthon操作rabbitMQ的模块名为:pika
https://github.com/pika/pika
在操作rabbitMQ之前,先通过Queue理解生产者消费者模型
订阅者2
MQ全称为MessageQueue,消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
puthon操作rabbitMQ的模块名为:pika
在操作rabbitMQ之前,先通过Queue理解生产者消费者模型
#!/usr/bin/envpython #_*_coding:utf-8_*_ importpika connection=pika.BlockingConnection(pika.ConnectionParameters( host='192.168.1.108')) channel=connection.channel() channel.exchange_declare(exchange='topic_logs', type='topic')#声明类型为direct名称为import的exchange result=channel.queue_declare(exclusive=True) queue_name=result.method.queue#生成一个随机名的队列 channel.queue_bind(exchange='topic_logs', queue=queue_name, routing_key="Nice.#")#将队列与exchange绑定,并声明关键字#代表只能匹配0个或者多个 print('[*]Waitingforlogs.ToexitpressCTRL+C') defcallback(ch,method,properties,body): print("[x]%r:%r"%(method.routing_key,body)) channel.basic_consume(callback, queue=queue_name, no_ack=True) channel.start_consuming()
订阅者2
routing_key="Nice.#"
相关文章推荐
- python核心编程-GUI程序按钮与标签
- Python 格式化字符分类
- Python操作MySQL数据库
- python模块系列之 - copy
- python--datetime&time
- [Python]Python pip用国内镜像下载的办法
- Python标准库:内置函数dict(**kwarg)
- 用Python操纵MySQL
- Python工具之SQLAlchemy
- 【LEETCODE】81-Search in Rotated Sorted Array II [Python]
- Python中urllib2总结
- python 中导入自己定义的模块路径
- python爬hdu网页
- Python学习笔记——基础篇(1): 变量及其类型
- python自动化渗透
- Python下载大全
- Python 高级特性之 sorted( )
- Python 高级特性之 filter( )
- Python 高级特性之 reduce( )
- Python 高级特性之 map( )