cluster-service
A service launcher supporting two modes, development and
production.
In development mode (default),
forever-monitor
is used to launch a single instance and keep it alive.
In production mode,
recluster is used
to launch a node.js cluster of
a given service.
A PID file is created in os.tmpdir()
with the file name ${pidDir}/cluster-serverice-master-${serviceName}.pid
.
By default, as many workers are stated as CPU cores can be detected.
The cluster also listens to SIGUSR2
and SIGTERM
signals.
Usage
const cluster = new ClusterServer(options);
cluster.run('./service.js');
done();
Options
logger
Winston compatible logger like Restore Logger.serviceName
[srv
] name of the service (used to build PID file ).mode
[development
] the mode name, development
or production
.pidDir
[os.tmpdir()
] Directory where to store the PID file .workerCount
[number of cores] The number of workers to launch in production mode.nodeOptions
[] command line options to node for development mode.