# 多进程

框架使用 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 的个数)