Skip to main content

Simplifies interactions with RabbitMQ by focusing on design patterns based on Topic Exchanges.

Project description

Simplifies interactions with RabbitMQ by focusing on design patterns based on Topic Exchanges. More information can be found here: http://www.rabbitmq.com/tutorials/tutorial-five-python.html

Goals

Embrace Kenneth Reitz’s thoughts on the 90% rule, i.e. requests module.

Messages are serialized as needed, starting from no serialization for strings to json and falling back to yaml if the more simple open serialization methods are not capable of serializing the object/message. i.e. datetime/date/decimal/etc.

#!/usr/bin/env python

from rabbit import Producer

with Producer(uri) as producer:
    for message in <iterable/generator>:
        producer.publish(message, routing_key)
from rabbit import Consumer

with Consumer(uri, exchange, queue, routing_key) as consumer:
    consumer.attach_action(...)
    consumer.handle_messages(...)

or for even more control of exchanges and queues:

from rabbit import Consumer

with Consumer(uri) as consumer:
    consumer.declare_exchange(...)
    consumer.declare_queue(...)
    consumer.attach_action(...)
    consumer.handle_messages(...)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thumper-0.0.10.tar.gz (160.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page