We migrated our critical payment gateway from Python (Flask) to Rust (Actix-Web) after a $20,000 incident during peak load. In this post-mortem, we share the architectural decisions, engineering trade-offs, and raw benchmark results.
In this video, you'll learn:
How Python’s Global Interpreter Lock (GIL) and Garbage Collection (GC) impacted our P99 latency at 50 requests/sec.
Why Rust's ownership model solved the throughput bottleneck on the same hardware.
The exact steps we took to rewrite the hot path in Rust.
Timestamps:
0:00 - The $20,000 Incident
0:10 - Python Bottleneck (GIL & GC)
0:25 - Why Horizontal Scaling Failed
0:35 - Rewriting the Hot Path in Rust (Actix-Web)
1:00 - Benchmark: 50 RPS vs 2,000 RPS
1:10 - Conclusion: Efficiency is Money