5 ms·
Why discord is switching from go to rust (2020)
- vmfunction 3y agoSeems like Discord is data usage pattern has reach the limits of LRU cache and latency. Nice detailed article, makes one think twice about using GC based language for cases like Discord.
- smegsicle 3y agogo's experimental memory arenas feature could lessen the pain of gc in a lot of cases
- vips7L 3y agoJust use a language with better GC’s or one where you have the ability to manage memory yourself in hot paths
- neonsunset 3y agoIt's rather about Go's inadequacy and shortcomings as a language. They could write C# or Java Go-style and get much, much higher throughput and efficiency. C# also lets you write lower-level and/or Rust style code to push the language which is not an option in Go.
- theshrike79 3y agoThis is a situation where one of the biggest (maybe the biggest) chat applications has a bit of code that's run "every time a message is sent and every time a message is read". In this instance Go's GC pauses were causing performance issues, they rewrote it in Rust with very good results. This doesn't mean that your application needs to be written in Rust because Go "isn't performant" =)