PythonadvanceddevopsAI generated

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

  1. 01

    Set up Celery with a Redis broker

    ~1.5h

    Configure a Celery app connected to a local Redis instance and define a simple test task.

  2. 02

    Build real background tasks

    ~2h

    Implement tasks such as image resizing or report generation that take meaningful time to run.

  3. 03

    Add retries and error handling

    ~1.5h

    Configure automatic retries with backoff for transient failures and dead-letter handling for permanent ones.

  4. 04

    Add scheduled periodic tasks

    ~1.5h

    Use Celery beat to run a recurring cleanup or report-generation task on a schedule.

  5. 05

    Expose an API to enqueue and check jobs

    ~2h

    Build a small Flask endpoint that enqueues tasks and another that reports job status by ID.

Ready to build this?

Get a GitHub repo and start building. Your AI reviewer checks each step as you go.

~8.5h · 5 steps

Tech stack

CeleryRedisFlask