celery 0.1.0-alpha.1

Rust implementation of Celery
Documentation

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

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:

Testimonials

"The crate we've all been waiting for! :clap: :clap: :raised_hands:" - You

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".