跳转到主要内容

librabbitmq-c的Python绑定

项目描述

版本:
0.5.0
下载:

http://pypi.python.org/pypi/pylibrabbitmq/

代码:

http://github.com/ask/pylibrabbitmq/

关键词:

rabbitmq, amqp, messaging, librabbitmq, rabbitmq-c, python

对RabbitMQ C库librabbitmq的实验性Python绑定。

你可能应该使用amqplib,但如果需要,并且需要额外的性能,可以回到这里。

安装

要安装,需要编译librabbitmq

$ mkdir -p /opt/Build/rabbit
$ cd /opt/Build/rabbit
$ hg clone http://hg.rabbitmq.com/rabbitmq-codegen/
$ hg clone http://hg.rabbitmq.com/rabbitmq-c/
$ cd rabbitmq-c
$ autoreconf -i
$ ./configure
$ make
$ make install

然后您可以安装此软件包

$ cd pylibrabbitmq-x.x.x
$ python setup.py install

示例

>>> from pylibrabbitmq import Connection, Message
>>> conn = Connection(host="localhost", userid="guest",
...                   password="guest", virtual_host="/")
>>> channel = conn.channel()
>>> channel.exchange_declare(exchange, type, ...)
>>> channel.queue_declare(queue, ...)
>>> channel.queue_bind(queue, exchange, routing_key)

生产

>>> m = Message(body, content_type=None, content_encoding=None,
...             delivery_mode=1)
>>> channel.basic_publish(m, exchange, routing_key, ...)

消费

>>> def dump_message(message):
...     print("Body:'%s', Proeprties:'%s', DeliveryInfo:'%s'" % (
...         message.body, message.properties, message.delivery_info))
...     message.ack()
>>> channel.basic_consume(queue, ..., callback=dump_message)
>>> while True:
...    connection.drain_events()

轮询

>>> message = channel.basic_get(queue, ...)
>>> if message:
...     dump_message(message)
...     print("Body:'%s' Properties:'%s' DeliveryInfo:'%s'" % (
...         message.body, message.properties, message.delivery_info))

其他

>>> channel.queue_unbind(queue, ...)
>>> channel.close()
>>> connection.close()

许可协议

本软件根据Mozilla公共许可协议授权。请参阅顶部分发目录中的LICENSE-MPL-RabbitMQ文件以获取完整的许可协议文本。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

pylibrabbitmq-0.5.0.tar.gz (30.6 kB 查看哈希值)

上传时间 源代码

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面