Working with Django and Celery

Automate workflows and deliver smooth user experiences with Django and Celery

Get Started
A task queue consisting of blocks lining up.

Manage asynchronous tasks with Django and Celery

With Celery, you can schedule tasks that run outside the HTTP request/response flow, ensuring that your users are never slowed down by work like:

  • Running machine learning models
  • Sending bulk emails
  • Processing images or PDFs
  • Generating exports of user data
  • Performing backups

Working with Django and Celery provides a roadmap you can follow to get the most out of Celery in your Django project.

The best part? The guide is completely free.

What's in the guide?

This guide is an excellent starting point for using Celery with Django. The detailed walkthroughs, coupled with exhaustive code samples, will cover the common use cases you may encounter. You will learn how to test your code, identify and fix issues, and containerize Celery with Docker.

You don't have to learn everything all at once. The guide is meant to be read over a longer period as you write more and more code.

  • Schedule custom commands with Celery Beat
  • Build resiliency into your app by retrying failed tasks
  • Containerize Django, Celery, and Redis with Docker
  • Monitor Celery workers with Flower

Start Here

Asynchronous Tasks with Django and Celery

Configure Celery to handle long-running tasks in a Django app.

Read Tutorial

Handling Periodic Tasks in Django and Celery and Docker

Manage periodic tasks with Django, Celery, and Docker.

Read Tutorial

Automatically Retrying Failed Celery Tasks

Automatically retry failed Celery tasks.

Read Tutorial

Working with Celery and Database Transactions

Make Celery work well with Django Database Transactions.

Read Tutorial