Granian: a Rust HTTP server for Python applications
summary
Granian is a Rust HTTP server for Python applications that uses Rust + Tokio + hyper and pyo3 to offload protocol handling from Python, providing SSL termination, HTTP/2 and websockets while serving supports WSGI ASGI RSGI apps. Benchmarks claim 5.7× to 47× throughput vs plain Uvicorn and about 80% higher websocket concurrency on a single process, with lower CPU and ~10% higher RAM; framework-facing RSGI yields 28x static files speed in one Emmett test. Early releases had baggage; use 0.4.2.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 0:13What is Granian?
- 1:53Why Granian exists
- 9:31Granian architecture
- 13:39Performance benchmarks
- 17:24The RSGI protocol
- 22:28Lessons learned
- 25:02Q&A and conclusion
related talks
32mRobyn: A fast async Python web framework with a Rust runtime
46mAdopting Rust by gracefully oxidising web applications
24mHow We Built Protosockets to Go Beyond HTTP and gRPC
10mRobyn - An asynchronous Python web framework with a Rust runtime
25mWTF, Rust for Web Development??
36mPolishing Python: Preventing Performance Corrosion with Rust
44mDo Pythons Rust? How we used PyO3 to build a Python Stream Processor w/ a Rust Heart
31mBuilding an extremely fast Python package manager, in Rust
