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(...)

uri is a messge queue uri in the form, mq://user:pass@host/vhost where mq://user:pass@localhost == mq://user:pass@localhost/

Within the uri you can pass user, password, host, port and vhost information. see thumper/test/test_mquri.py for more details

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.13.tar.gz (160.4 kB view details)

Uploaded Source

File details

Details for the file thumper-0.0.13.tar.gz.

File metadata

  • Download URL: thumper-0.0.13.tar.gz
  • Upload date:
  • Size: 160.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for thumper-0.0.13.tar.gz
Algorithm Hash digest
SHA256 6ba10e9b5045c52e9cc5f7c5d855e2fb42c204f29e2949f3378ddb98a1cc69a0
MD5 dc5bb0b3b170b084a966b2480707b7df
BLAKE2b-256 ec645fd74b46c002038260d0ba35777fc7e0ddb5ef8b3892daef8825dbcefc3f

See more details on using hashes here.

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