This document describes the current stable version of Celery (3.1). For development docs, go here.
The worker consists of 4 main components: the consumer, the scheduler, the mediator and the task pool. All these components runs in parallel working with two data structures: the ready queue and the ETA schedule.
Receives messages from the broker using Kombu.
When a message is received it’s converted into a celery.worker.job.TaskRequest object.
Tasks with an ETA, or rate-limit are entered into the timer, messages that can be immediately processed are sent to the execution pool.