Building Lightning-Fast Apps With asyncio
summary
Replaces an eight-node legacy Java cluster with one asyncio-powered instance that matches and often exceeds prior throughput, handling around 150 million events daily with a <300 ms latency SLO by running multiple per-core event loops reading from a distributed queue and sending downstream via nonblocking I/O. Uses Python asyncio (async/await), distributed queue consumer integration, and active‑active redundancy; result is order-of-magnitude faster for network‑bound workloads while falling back to threads/processes for CPU‑bound or non‑async libraries.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 1:12The production problem
- 2:55Design requirements
- 5:25Async IO concept
- 7:32Event loop explained
- 9:18Code walkthrough
- 11:25New service design
- 13:10When to use async IO
- 15:58Key takeaways
- 16:40Q&A
related talks
40mAdvanced asyncio: Solving Real-world Production Problems
32mAdvanced asyncio: Solving Real-World Production Problems
31mThinking Outside the GIL with AsyncIO and Multiprocessing
32mEnhancing AsyncIO for Complex Applications
56mLeveraging Async and Await in Modern Python
32masyncio community, one year later
19mUnblocking the Loop: Mastering Python's I/O Loop Monitoring
28mWhy Should Async Get All The Love Advanced Control Flow With Threads
