Skip to content

Comment on Rewrite from Ruby to Golang resulted in ~70x speed increase

Comments

Nice article on rewriting something: it focuses on the need for the rewrite, and on an analysis done beforehand to get an idea of what to focus on. The rewrite is driven by a successful business, in other words.

I'm a bit curious what was so slow about the Ruby code, as it sounds like it was just doing 'managing' rather than actual heavy-duty processing, which no, it is not good at.

Erlang sounds like it would have been a good fit too, although it's not quite as performant as Go.

Thanks!

It has been some time since we ran the profiler on the Ruby code, but AFAIR it was doing a lot of parsing; also it extensively used a logging gem that was dumping Ruby objects to strings. We could have just used another logging library and rewritten the parsing code to C, but when we checked the numbers the potential improvements didn't seem good enough.

Erlang probably would have worked too, but we already had some code in Go.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.