Python 的消息库 Kombu

BSD
Python 查看源码»
跨平台
2016-09-07
局长

Kombu  是一个为Python写的消息库。Kombu 旨在使消息通知在Python中更容易。

示例代码:

from kombu import Connection, Exchange, Queue
media_exchange = Exchange('media', 'direct', durable=True)
video_queue = Queue('video', exchange=media_exchange, routing_key='video')
def process_media(body, message):
    print body
    message.ack()
# connections
with Connection('amqp://guest:guest@localhost//') as conn:
    # produce
    producer = conn.Producer(serializer='json')
    producer.publish({'name': '/tmp/lolcat1.avi', 'size': 1301013},
                      exchange=media_exchange, routing_key='video',
                      declare=[video_queue])
    # the declare above, makes sure the video queue is declared
    # so that the messages can be delivered.
    # It's a best practice in Kombu to have both publishers and
    # consumers declare the queue. You can also declare the
    # queue manually using:
    #     video_queue(conn).declare()
    # consume
    with conn.Consumer(video_queue, callbacks=[process_media]) as consumer:
        # Process messages and handle events on all channels
        while True:
            conn.drain_events()
# Consume from several queues on the same channel:
video_queue = Queue('video', exchange=media_exchange, key='video')
image_queue = Queue('image', exchange=media_exchange, key='image')
with connection.Consumer([video_queue, image_queue],
                         callbacks=[process_media]) as consumer:
    while True:
        connection.drain_events()
的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

Openstack f3版本安装

Openstack f3版本出来了,从一个干净的系统Centos6.3 安装需要如下包: ./cinder-2012.2~f3.tar.gz ./horizon-2012.2~f3.tar.gz ./nova-2012.2~f3.tar.gz ./python-novaclient-2.6.10.tar.gz...

2012/08/29 21:46
461
0
django-dynamic-scraper(DDS)配置中的一些问题

如果安装了South,建议执行数据库创建命令的顺序是: python manage.py schemamigration –initial 方便以后做数据库更改(添加删除修改字段)时使用 Python manage.py syncdb Python manag...

2013/11/12 13:13
239
0
openstack ironic 开发环境搭建第一步

git clone https://github.com/openstack/ironic virtualenv venv_iron cd venv_iron/ source bin/activate sudo yum -y install mysql-libs mysql postgresql-devel pip install d2to1 pbr ...

2013/08/06 21:15
263
0
openstack安装诀窍

记得原来开始手动安装Openstack非常痛苦,一是对python不了解,二是对Openstack不熟悉;困难地稀里哗啦的。渐渐地熟悉了,其实Openstack还是有做的比较美好的地方。有些诀窍可以掌握 ------...

2012/08/22 14:30
1K
0
使用openstack E版遇到的问题

感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息。 Better Me的博客:blog.csdn.net/tantexian 如需交流,欢迎大...

2016/03/01 15:54
34
1
Celery的一些社区资源-English

Community Links Tweet Celery Best Practices Author: Deni Bertovic | Content type: Article Understanding the new messaging frameworks with virtual backends [Kombu] Author: Superc...

2015/05/29 08:21
80
0
oslo.messaging组件的学习之call方法

2014年4月25日 BY THUANQIN·0 COMMENT 这篇文章会介绍一下oslo.messaging组件的实现原理。相关的学习网站是: http://docs.openstack.org/developer/oslo.messaging/index.html http://doc...

2016/03/29 09:21
71
1
django-dynamic-scraper(DDS)网页抓取环境安装搭建

之前了解了scrapy的强大和速率的惊人,django的便捷,苦于没有机会真正的接触,前几天大哥让研究一下这个框架,wow,DDS强大的把这两个得力的工具整合到了一起,这样只需简单的安装和配置,就...

2013/11/11 16:56
2.6K
0
六、OpenStack 安装 Neutron-2

在Network 节点 # nano /etc/sysctl.conf net.ipv4.ip_forward=1 net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0 net.bridge.bridge-nf-call-arptables=1 net.bridge.bri...

2016/03/30 17:16
45
1
OpenStack监控测量服务Ceilometer安装及 API说明

1.Ceilometer是做什么的 Ceilometer是OpenStack中的一个子项目,它像一个漏斗一样,能把OpenStack内部发生 的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。Ceilome...

2015/07/27 15:33
1K
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部