Simple messaging with RabbitMQ and Python.
Project description
BunnyMQ
Simple messaging with RabbitMQ and Python.
Head over to the tutorial to get started.
This is a small library inspired by the Python standard library queue module and the hotqueue library. Primarily geared towards programmer happiness :slightly_smiling_face:
Basic Usage:
>>> queue = Queue('test')
>>> queue.put(1)
>>> queue.put('hello', priority=8)
>>> queue.put({'a': 1})
>>> queue.get()
'hello'
>>> queue.task_done()
>>> queue.get()
1
>>> queue.requeue()
Iterating over a queue indefinitely, waiting if nothing is available:
>>> for item in queue:
... print(item)
... queue.task_done()
Features
- Simple usage
- Automatic serialization and deserialization of Python objects
- Automatic retry while publishing
- Automatic handling of connection failures while consuming
- Automatic handling of message redeliveries because of failure to send acknowledgement at the end of processing. This is a frequent scenario for long running consumer tasks. If you have encountered this problem, do read the details.
- Easy parallelization by starting multiple workers to share the load.
Install
pip install bunnymq
Requirements
- Python 3.6+
- RabbitMQ server
- Pika
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
bunnymq-0.0.8.tar.gz
(7.4 kB
view hashes)
Built Distribution
Close
Hashes for bunnymq-0.0.8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac04cd0a4b15e5d826786db2f22a17c6fc29988c9d404fb2dfaf63dea1a59726 |
|
MD5 | 3cb6047b0b71b0515d75f021e601cdf5 |
|
BLAKE2b-256 | f91f5b93b83f497db3bbb8d47ff39eef118c7b39ba718972f60e775322e4243f |