Background Processing for Python 3.
Project description
dramatiq
A fast and reliable distributed task processing library for Python 3.
Changelog: https://dramatiq.io/changelog.html
Community: https://groups.io/g/dramatiq-users
Documentation: https://dramatiq.io
Sponsors
Installation
If you want to use it with RabbitMQ
pip install 'dramatiq[rabbitmq, watch]'
or if you want to use it with Redis
pip install 'dramatiq[redis, watch]'
Quickstart
Make sure you've got RabbitMQ running, then create a new file called
example.py
:
import dramatiq
import requests
import sys
@dramatiq.actor
def count_words(url):
response = requests.get(url)
count = len(response.text.split(" "))
print(f"There are {count} words at {url!r}.")
if __name__ == "__main__":
count_words.send(sys.argv[1])
In one terminal, run your workers:
dramatiq example
In another, start enqueueing messages:
python example.py http://example.com
python example.py https://github.com
python example.py https://news.ycombinator.com
Check out the user guide to learn more!
License
dramatiq is licensed under the LGPL. Please see COPYING and COPYING.LESSER for licensing details.
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
dramatiq-1.11.0.tar.gz
(71.2 kB
view hashes)
Built Distribution
dramatiq-1.11.0-py3-none-any.whl
(112.0 kB
view hashes)
Close
Hashes for dramatiq-1.11.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb209d0d54e36e7c3f31862ca3f088752d9a3799a5a46d7979d6891326de5a14 |
|
MD5 | 9c0baf0f4206a16a5fa70982e9ef9c27 |
|
BLAKE2b-256 | 8fad6a2bd15f02a10dc61c1c41208a6347d5f3524d336b08a82f9755a0b18516 |