@rayo/storm v1.3.6
Harness the full power of multi-core CPUs.
storm will cluster your application and spawn an instance on each available core. You can expect performance gains of up to 150%.
storm will handle OS signals as expected.
stormis available, by default, withrayo.js. See rayo/options.storm
Install
$> npm i @rayo/stormUse
import { storm } from '@rayo/storm';
const yourAwesomeFunction = () => {
console.log(`Hello, I am worker ${process.pid}`);
};
storm(yourAwesomeFunction, {
monitorPort: 31000
});Once all worker processes have been spawned, storm will, by default, launch a monitoring service which will enable you to get basic metrics for each process.
The monitor service resource will be mapped to the /monitor path. Detailed information on each worker will be mapped to the /monitor/{workerId} path.
In the above example, the monitor service will be available at http://localhost:31000/monitor
The monitor service is WIP. However, this does not affect storm's stability.
API
storm(work , options = {})
@param {function} Called when starting a worker process.
@param {object} [options]
@returns {void}options.workers{number}- Number of workers to spawn.
Default:Number of available CPU cores.
options.master{function}- Called when starting the master process.
- This will only be called once.
- The
masterfunction will be passed one argument; thecluster.
options.keepAlive{boolean}- Whether the cluster should be kept alive or not. Fork new processes on process death.
Default:true
options.monitor{boolean}- Whether the cluster should be monitored or not.
Default:true
options.monitorPort{number}- Listen on this port for incoming
/monitorconnections. - If port is omitted or is 0, the operating system will assign an arbitrary, unused port.
- Listen on this port for incoming
Contribute
See our contributing notes.
License
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
4 years ago
4 years ago
4 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago