4 ms·
People tend to refer to the bit where Discord rewrote a bit of their stack in Rust because Go GC pauses were causing issues. The code was on the hot path of th
by theshrike79 1y ago
People tend to refer to the bit where Discord rewrote a bit of their stack in Rust because Go GC pauses were causing issues.
The code was on the hot path of their central routing server handling Billions (with a B) messages in a second or something crazy like that.
You're not building Discord, the GC will most likely never be even a blip in your metrics. The GC is just fine.
- AtlasBarfed 1y agoI get you can specifically write code that does not malloc, but I'm curious at scale if there are heap management / fragmentation and compression issues that are equivalent to GC pause issues. I don't have a lot of experience with the malloc languages at scale, but I do know that heat fragmentation and GC fragmentation are very similar problems. There are techniques in GC languages to avoid GC like arena allocation and stuff like that, generally considered non-idiomatic.