Get the latest tech news

Next Generation Out of Band Garbage Collection


In this post we look at the impact of a new feature of Ruby 3.4 on Shopify’s monolith.

In March 2024, during our annual Ruby Infrastructure team gathering, we fleshed out the details of the new feature we wanted, and Matthew Valentine-House started working on a proof of concept, which we then deployed to a small percentage of our production servers to see how effective it could be. Since Shopify monolith runs on Ruby’s master branch, we don’t have to wait for the December release to use these new features, so recently I went to work on enabling the new out-of-band GC implementation on 50% of production servers, and the results are amazing on all metrics. However, we could try to additionally use heuristics from GC.stat to eagerly trigger minor garbage collection out-of-band, so that the majority of requests don’t have to spend any time at all in GC.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of generation

generation

Related news:

News photo

Is there now a generation of users who never worked with files?

News photo

My NumPy year: Creating a DType for the next generation of scientific computing

News photo

Janus: Decoupling Visual Encoding for Multimodal Understanding and Generation