Distributed Task Queue with Celery and Redis
Build a background job processing system using Celery with Redis as the broker, including retryable tasks, scheduled jobs, and a small Flask endpoint to enqueue work. Learners practice distributed task queues, worker scaling, and handling task failures reliably.
- Estimate
- ~8.5h
- Steps
- 5
- Completed by
- 0
- Proposed by
- codeseed.app
Celery · Redis · Flask
Project roadmap
- 01
Set up Celery with a Redis broker
~1.5hConfigure a Celery app connected to a local Redis instance and define a simple test task.
- 02
Build real background tasks
~2hImplement tasks such as image resizing or report generation that take meaningful time to run.
- 03
Add retries and error handling
~1.5hConfigure automatic retries with backoff for transient failures and dead-letter handling for permanent ones.
- 04
Add scheduled periodic tasks
~1.5hUse Celery beat to run a recurring cleanup or report-generation task on a schedule.
- 05
Expose an API to enqueue and check jobs
~2hBuild a small Flask endpoint that enqueues tasks and another that reports job status by ID.
Resources
Ready to build this?
Get a GitHub repo and start building. Your AI reviewer checks each step as you go.
Tech stack