Skip to content

eggjs/cluster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

016562c · May 31, 2023
May 31, 2023
May 31, 2023
May 31, 2023
Jul 8, 2018
May 31, 2023
Jul 8, 2018
May 31, 2023
Feb 28, 2017
May 31, 2023
May 27, 2019
May 31, 2023

Repository files navigation

egg-cluster

NPM version CI Test coverage Known Vulnerabilities npm download

Cluster Manager for EggJS


Install

npm i egg-cluster --save

Usage

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');
});

Options

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
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

Env

EGG_APP_CLOSE_TIMEOUT: app worker boot timeout value

EGG_AGENT_CLOSE_TIMEOUT: agent worker boot timeout value

License

MIT