Cluster Manager for EggJS
npm i egg-cluster --save
const startCluster = require('egg-cluster').startCluster;
startCluster({
baseDir: '/path/to/app',
framework: '/path/to/framework',
});
You can specify a callback that will be invoked when application has started. However, master process will exit when catch an error.
startCluster(options, () => {
console.log('started');
});
Param | Type | Description |
---|---|---|
baseDir | String |
directory of application |
framework | String |
specify framework that can be absolute path or npm package |
plugins | Object |
plugins for unittest |
workers | Number |
numbers of app workers |
sticky | Boolean |
sticky mode server |
port | Number |
port |
debugPort | Number |
the debug port only listen on http protocol |
https | Object |
start a https server, note: key / cert / ca should be full path to file |
require | Array|String |
will inject into worker/agent process |
pidFile | String |
will save master pid to this file |
startMode | String |
default is 'process', use 'worker_threads' to start the app & agent worker by worker_threads |
ports | Array |
startup port of each app worker, such as: [7001, 7002, 7003], only effects when the startMode is 'worker_threads' |
env | String |
custom env, default is process.env.EGG_SERVER_ENV |
EGG_APP_CLOSE_TIMEOUT: app worker boot timeout value
EGG_AGENT_CLOSE_TIMEOUT: agent worker boot timeout value
Made with contributors-img.