Skip to main content
EuroPythonCode of ConductLive 📹

Async Django

Wicklow Hall 1
Start (Dublin time):
Start (your time):
45 minutes


Python has a full set of tools for asynchronous programming - multiprocessing, multithreading, coroutines, etc. And Django uses most of them.

Since Django 3, we have the ability to create fully async non-blocking Django views that could handle thousands of requests concurrently.

In this talk, we'll focus on 2 key topics:

  1. The motivation and the decisions behind the Django async support
  2. Choosing the right tools to make our views async and efficient



This talk will cover:

  1. What is the difference between asynchrony and concurrency?
  2. Python and Django tools for asynchronous programming.
  3. Examples of efficient and inefficient "async" Django views.
  4. How does Django handle requests asyncronously - the path from NGINX to the database
  5. How should we handle thread-blocking operations?
  6. A brief history and roadmap of Django's async support

The speaker

Ivaylo Donchev

Currently working as Technical team lead in HackSoft in Bulgaria.

A programmer for ~7 years, working with Python and DJango for 6 years.

Speaker at EuroPython 2018 and PyCon Balkan 2018.

← Back to schedule