So I’m a fan of the concept of node.js, but am still unconvinced of its maturity. The big thing I am worried about is its garbage collection, which is comparable to very old Java GC in that it is a “stop-the-world” style GC, where all execution is paused while GC happens. According to this post:
Whether it is acceptable depends on your application and your heap size. Big Gc is around 1.3ms per Mbyte. YMMV. About half that for a compacting GC. Around 1 GC in 10 is big. Around 1 big GC in 3 is compacting. Use V8 flag trace-gc to log GCs. We have done some work on reducing pauses. No promises, no timetables. See branches/experimental/gc in V8 repo.
Hmmm. I think that we would need extensive load testing and profiling before we roll out node.js in production.
by Matthew Painter, CTO