Machinery is a distributed task queue and asynchronous workflow engine. It provides a system for processing heavy workloads outside the main request flow using a network of distributed background workers and a message-based job orchestrator.
The project manages complex task lifecycles through sequential chaining, where results are passed between tasks, and parallel coordination, which can trigger callback tasks upon the completion of a group. It supports periodic workflow scheduling for recurring jobs and delayed execution via specific timestamps.
The system includes capabilities for result persistence, automatic task retries with exponential backoff, and worker concurrency limiting. It also utilizes routing keys to distribute specific job types across dedicated queues.