Skip to main content

Building performance-critical Python tools with Rust: Lessons from production

UB2.252A (Lameere) | Day 2 | 13:00 - 13:25 | Speakers: Cian Butler

Building performance-critical Python tools with Rust: Lessons from production
A picture of a devroom at FOSDEM 2024
Open in browser

Notes

Abstract

Python dominates web development, but they often comes with performance and scaling issues. Recently, the Python ecosystem has seen massive performance gains from projects written in Rust, such as uv and ruff. But what other projects are out there to help Python scale thanks to Rust? At Cloudsmith, we achieved 2x throughput on our 10-year-old Django monolith by integrating Rust-based tools and contributed features back upstream

We'll look at a number of projects that helped us start bringing Rust into our stack. We'll go over our methodology: establishing performance baselines through load testing, identifying bottlenecks, and scaling issues. We integrated existing Rust-based tools with minimal code changes and tuned application server configuration for maximum throughput, consolidating infrastructure and reducing operational complexity.

We'll also share our experience contributing observability features upstream to Granian, ensuring production-ready monitoring that benefits the entire community.

You'll leave with actionable strategies for modernising legacy services using existing Rust tools, understanding when this approach makes sense, and maintaining production reliability throughout the transition.

Speakers

Cian Butler

I'm an SRE at Cloudsmith, focused on Performance Engineering and Edge computing. I have multiple years of experience developing large-scale observability systems and scaling Python and Rust services to millions of users.


Notice: The placeholder video image is licensed under CC BY-SA 4.0. The original image can be found hereChanges made to the image are: Cropped the image to a new ratio, part of the image was cut off.