Task queues are used as a mechanism to distribute work across threads or
machines.

Celery communicates via messages, usually using a broker to mediate between
clients and workers.
