Celery is a distributed task queue written in Python, which works using distributed messages. Each execution unit in celery is called a task. A task can be executed concurrently on one or more servers using processes called workers. By default, Celery achieves this using
multiprocessing, but it can also use other backends such as gevent, for example.
Tasks can be executed synchronously or asynchronously with results available in the future, like objects. Also, task results can be stored in storage backend such as Redis, databases, or in files.
Celery differs from message queues in that the basic unit in celery is an executable task—a callable in Python—rather than just a message.
Celery, however, can be made to work ...