Modern asynchronous programming

People are starting to use asyncio today, the talk covers common design mistakes and shares best practices. The summary of asyncio usage for 5 years from the library maintainer.

Tags: Parallel Programming, Web

Scheduled on wednesday 11:30 in room media


Andrew Svetlov (andrew_svetlov)

Andrew is the Python Core Developer. For last years he is concentrated on asyncio and derived technologies. Co-Author of aiohttp, aio-libs team lead, asyncio maintainer.


I started to take part of asyncio development at ancient times when the library had called Tulip. We made a bunch of libraries under aio-libs umbrella: aiohttp as the most popular asyncio web client and server library, drivers for PostgreSQL, Redis, Kafka, ElasticSearch, Mongo etc. asyncio proved its reliability, and now it is quite famous: thousands of GitHub projects are based on asyncio, very many companies use asyncio as a basement for their infrastructure. The overall design is good but we made several minor mistakes, most of them are fixed by Python 3.6 and 3.7. By the talk, I want to share my asyncio knowledge and my current understanding of best practices learned the hard way.