4 ms·
Occasional pauses of 400-500 milliseconds? How would one mitigate that when coding a restful API server?
by atomical 8y ago
Occasional pauses of 400-500 milliseconds? How would one mitigate that when coding a restful API server?
- fwip 8y agoYou could wait until $current_year, in which GC pauses are about 50 microseconds.
- Rapzid 8y agoThis article is pretty old. If this is from garbage collection, Go has more than addressed this with <100 microsecond stop the world in "typical worse case" scenarios. I believe it also tries to spread out the work to provide consistent latency.
- easytiger 8y agoMy, possibly incorrect understanding, is that it had implemented hard time max pause durations, which will only lead to an infinite amount of garbage under some use patterns. Given the point if gc is you doubt think about it that's bad. Giving go a gc was a total design failure
- majewsky 8y agoGo's GC is the best GC I've seen in practice. It's just silently working in the background without causing visible interruptions. And contrary to what you imply, I've never seen the GC cause memory leaks.
- easytiger 8y ago> "visible interruptions" Humans can see things only longer than 200milliseconds. A small eternity. The point is there are entire classes of application which have latency targets in the handful of microseconds. A 1ms STW isn't acceptable in this scenario.
- dnautics 8y agoThe erlang gc is far better than the go gc, and it's deployed on every Cisco and juniper switch.
- snarfy 8y agohttps://news.ycombinator.com/item?id=12821586 https://news.ycombinator.com/item?id=12821586 (2016)