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

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for thumper-0.0.12.tar.gz
Algorithm Hash digest
SHA256 3ed07d352ea54e3692ed276a936a7f24dd8d4fde882023a9580aceb9aee3fa02
MD5 5f050baa40e72817b54501db0233de24
BLAKE2b-256 50e59281202f7526c0316c97dca0dcde03ab3952a86becd64554e3687c2ec72c

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