On Fri, Jul 13, 2012 at 3:10 AM, Alexey Petrushin <[email protected]> wrote: > There are rumors that current Node.js (or, more exactly V8 GC) performs > badly when there are lots of JS objects and memory used. > > Can You please explain what exatly is the problem - lots of objects or lots > of properties on one object (or array)?
This is one of those questions to which there is no single good answer. The V8 GC is fairly unsophisticated as garbage collectors go (sorry, Vyacheslav) and some usage patterns don't play well with it. That's not a knock on V8, by the way, most garbage collectors have similar issues. A good example of a usage pattern that taxes the V8 GC is the http module in node. It creates lots of objects with different, often overlapping lifecycles and it breaks a number of (otherwise very reasonable) assumptions that most GCs make, f.e. that the tenured generation has few pointers to the young generation. > Maybe there are some benchmarks, would be interesting to see actual code and > numbers. > > As far as I know the main problem - lots of properties on one object, not > lots of objects itself (although I'm not sure). If so - would be the > in-memory graph database (about couple of hundreds of properties on each > node at max) a good case? > > Also I heard that latest versions of V8 has improved GC and that it solved > some parts of this problems - is this true, and when it will be available in > Node.js? 0.8 releases ship with V8 3.11.10.*. I believe the improvements you refer to are part of V8 3.12.0 and newer. -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
