Menu
Sign In Search Podcasts Charts People & Topics Add Podcast API Blog Pricing

Cian Butler

๐Ÿ‘ค Speaker
690 total appearances

Appearances Over Time

Podcast Appearances

Rust in Production
Cloudsmith with Cian Butler

And it was known that I was a Rust developer coming from a Rust shop.

Rust in Production
Cloudsmith with Cian Butler

So there was a known value that I was probably going to write some Rust at some point.

Rust in Production
Cloudsmith with Cian Butler

But we didn't sit down and say, how can we bring Rust in to scale this service?

Rust in Production
Cloudsmith with Cian Butler

I sat down and I just started looking at those traces, started looking at Datadog, started looking at where the bottlenecks in our service were.

Rust in Production
Cloudsmith with Cian Butler

We had load tests running.

Rust in Production
Cloudsmith with Cian Butler

We were getting information back about what was slow, what were our slowest endpoints, all that kind of stuff.

Rust in Production
Cloudsmith with Cian Butler

So the things that came out when you look at that data was we would sit waiting on IO, and it would be serialization.

Rust in Production
Cloudsmith with Cian Butler

These were two of our biggest things.

Rust in Production
Cloudsmith with Cian Butler

The IO was two different types of IO.

Rust in Production
Cloudsmith with Cian Butler

Our database, we query the database a lot, probably too much, but we do it.

Rust in Production
Cloudsmith with Cian Butler

Eats up a lot of resources.

Rust in Production
Cloudsmith with Cian Butler

The other side is the network.

Rust in Production
Cloudsmith with Cian Butler

So we call out to upstreams like PyPy and Cargo to pull in information.

Rust in Production
Cloudsmith with Cian Butler

And then we have the inbound requests.

Rust in Production
Cloudsmith with Cian Butler

So that's requests from our customers to us.

Rust in Production
Cloudsmith with Cian Butler

And how many requests per second can we pull in from the network and process concurrently?

Rust in Production
Cloudsmith with Cian Butler

The other bits being serialization, that's serializing large JSON payloads, large XML payloads, and that kind of stuff.

Rust in Production
Cloudsmith with Cian Butler

So we sat down and said, how can we go about fixing this?

Rust in Production
Cloudsmith with Cian Butler

And it wasn't a one shot of like, we need to fix it all at once, or we need to roll everything out, switch everything up at once, or let's build it ourselves.

Rust in Production
Cloudsmith with Cian Butler

We try not to be a shop that suffers from not built here kind of thing.