Celery is a simple, flexible, and reliable distributed system to process vast amounts of messages, while providing operations with the tools required to maintain such a system. It’s a task queue with focus on real-time processing, while also supporting task scheduling. Celery has a large and diverse community of users and contributors, you should come join us on IRC or our mailing-list. Celery is Open Source and licensed under the BSD License. A task queue’s input is a unit of work called a task. Dedicated worker processes constantly monitor task queues for new work to perform. Celery communicates via messages, usually using a broker to mediate between clients and workers. To initiate a task the client adds a message to the queue, the broker then delivers that message to a worker. Celery requires a message transport to send and receive messages.
Features
- A Celery system can consist of multiple workers and brokers
- Celery is written in Python
- The protocol can be implemented in any language
- Language interoperability can also be achieved exposing an HTTP endpoint and having a task that requests it
- Celery requires a message transport to send and receive messages
- Celery can run on a single machine, on multiple machines, or even across data centers