Sam Roberts dce35146e0 cluster: only forcibly exit worker on unclean exit
Fix inadvertent v0.11 changes to the definition of suicide, particularly
the relationship between suicide state, the disconnect event, and when
exit should occur.

In v0.10, workers don't forcibly exit on disconnect, it doesn't give
them time to do a graceful finish of open client connections, they exit
under normal node rules - when there is nothing left to do. But on
unexpected disconnect they do exit so the workers aren't left around
after the master.

Note that a test as-written was invalid, it failed against the v0.10
cluster API, demonstrating that it was an undocumented API change.
2013-12-31 11:43:43 -08:00
2013-12-31 10:33:54 -08:00
2013-03-19 20:07:38 +01:00
2013-06-17 17:21:56 +02:00
2013-12-05 16:15:21 -08:00
2013-12-05 16:15:21 -08:00

Evented I/O for V8 javascript.

To build:

Prerequisites (Unix only):

* GCC 4.2 or newer
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)

Unix/Macintosh:

./configure
make
make install

With libicu i18n support:

svn checkout --force --revision 214189 \
    http://src.chromium.org/svn/trunk/deps/third_party/icu46 \
    deps/v8/third_party/icu46
./configure --with-icu-path=deps/v8/third_party/icu46/icu.gyp
make
make install

If your python binary is in a non-standard location or has a non-standard name, run the following instead:

export PYTHON=/path/to/python
$PYTHON ./configure
make
make install

Prerequisites (Windows only):

* Python 2.6 or 2.7
* Visual Studio 2010 or 2012

Windows:

vcbuild nosign

You can download pre-built binaries for various operating systems from http://nodejs.org/download/. The Windows and OS X installers will prompt you for the location to install to. The tarballs are self-contained; you can extract them to a local directory with:

tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz

Or system-wide with:

cd /usr/local && tar --strip-components 1 -xzf \
                     /path/to/node-<version>-<platform>-<arch>.tar.gz

To run the tests:

Unix/Macintosh:

make test

Windows:

vcbuild test

To build the documentation:

make doc

To read the documentation:

man doc/node.1

Resources for Newcomers

Description
Languages
JavaScript 61.4%
C++ 23.3%
Python 10.7%
C 2.8%
HTML 0.7%
Other 1%