Celery is a distributed task system.
Every task must have a unique name, and a new name will be generated out of the function name if a custom name is not provided.
The worker has the ability to send a message whenever some event happens. These events are then captured by tools like Flower, and celery events to monitor the cluster.
http://stackoverflow.com/questions/14817181/django-celery-connectionerror-too-many-heartbeats-missed
Why say celery is a distributed task system?