Challenges and Learnings: Building gRPC Python AsyncIO Stack
summary
gRPC Python AsyncIO stack implements a native AsyncIO API with 23 new public classes and 64 async methods, unifies client call paths into one awaitable model, adds read/write stream objects and Pythonic response iteration, and removes thread-exhaustion by moving blocking work off the event loop. Benchmarks show the AsyncIO stack hits about 50% of C++ per-core performance and is 2–28× faster than the old sync stack; released experimental since 1.25.
AI-written summary · about
chapters (16)
- 0:00Overview
- 0:49Fragmented Async Story
- 1:40Package asyncio
- 2:57Until A Helping Hand Appeared
- 3:38Community Effort: Thank You!
- 4:42Async API
- 5:35Thread Exhaustion Issue
- 6:20Simplified API: Unified Calls
- 6:51Simplified API: Streaming Calls
- 7:45None-Blocking I/O
- 9:091 Loops & Threads GRPC
- 10:14Challenge #2: Solution
- 10:58Performance
- 11:38Challenge #3: Previous Solution
- 11:52Challenge #3: Solution
- 13:10Status Update
related talks
27mgRPC-Python: Major Feature Updates
31mA Really Gentle Introduction to Asyncio
27mgRPC in Python. Build fast scalable APIs for your services
33mArtisanal Async Adventures
17mHigh Performance Python Microservice Communication
29mWhat in the World is Asyncio?
31mThinking Outside the GIL with AsyncIO and Multiprocessing
30mLet's get you started with asynchronous programming
