框架使用 node 提供的 cluster
内置模块来创建多进程模型,这样可以避免单一进程挂了导致服务异常的情况。
框架默认关闭多进程功能,使用单一进程运行,可以在配置文件中设置开启
在 src/app/config/app.js
配置 cluster
的值 为 true
即可开启多进程模型:
// app.js
export default {
// ...
cluster: true,
// ...
}
多进程模型下,Master 进程会根据 workers
的大小 fork
对应数量的 Worker 进程,由 Woker 进程来处理用户的请求。当 Worker 进程异常时会通知 Master 进程 Fork 一个新的 Worker 进程,并让当前 Worker 不再接收用户的请求。如需自定义 Worker 进程数量,可以配置workers
的值:
// app.js
export default {
// ...
workers: 4,
// ...
}
workers 的值为子进程的数量,默认为0(当前 cpu 的个数)