Node.js's goal is to provide an easy way to build scalable network programs. Node.js communicates to the operating system (via epoll, kqueue, /dev/poll, or select) that it should be notified when a new connection is made, after which it goes to sleep.
If someone new connects, then it executes the callback. Each connection is only a small heap allocation.
What's New in This Release:
· streams: Update all streaming interfaces to use new classes (isaacs)
· node: remove idle gc (Ben Noordhuis)
· http: protect against response splitting attacks (Bert Belder)
· fs: Raise error when null bytes detected in paths (isaacs)
· fs: fix 'object is not a function' callback errors (Ben Noordhuis)
· fs: add autoClose=true option to fs.createReadStream (Farid Neshat)
· process: add getgroups(), setgroups(), initgroups() (Ben Noordhuis)
· openssl: optimized asm code on x86 and x64 (Bert Belder)
· crypto: fix leak in GetPeerCertificate (Fedor Indutny)
· add systemtap support (Jan Wynholds)
· windows: add ETW and PerfCounters support (Scott Blomquist)
· windows: fix normalization of UNC paths (Bert Belder)
· crypto: fix ssl error handling (Sergey Kholodilov)
· node: remove eio-emul.h (Ben Noordhuis)
· os: add os.endianness() function (Nathan Rajlich)
· readline: don't emit "line" events with a trailing 'n' char (Nathan Rajlich)
· build: add configure option to generate xcode build files (Timothy J Fontaine)
· b...