celery 0.1.0-alpha.3

Rust implementation of Celery
Documentation

A Rust implementation of the Celery protocol, fully compatible with Python workers and producers.

Inspired by, well... Celery, but also batch-rs especially for it's awesome macro implementation.

Features

  • Send tasks from Python to Rust or vice versa :left_right_arrow:
  • Use provided brokers and backends or implement your own :wrench:
  • Natural async / await interface :sparkler:
  • Easily customizable with callbacks :telephone:
  • High performance and safe :fire: :fire: :fire:

Examples

The ./examples directory contains a simple Celery app that is implemented in both Python and Rust using an AMQP broker. Before running the examples you'll need to set the environment variable AMQP_ADDR to your broker URL.

Then send a task from Python to Rust by running

bash ./examples/python_to_rust.sh

Similary, send a task from Rust to Python by running

bash ./examples/rust_to_python.sh

Missing features

rusty-celery is still in the early stages and therefore there are several features of the Celery protocol that are still missing. To see what's currently missing search for issues with the label "Protocol Feature".

Contributing

We welcome contributors! If you're interesting in contributing, a good place to start would be any issue marked with the label "Status: Help Wanted".