PM2用Cluster Mode,不用修改代码即可提升Node.js项目性能!

一、问题简介

cluster mode 就是在单台服务器上,开启多个相同 node.js项目 进程,共同处理网络请求服务,让 node.js项目 处理并发和响应速度达到最高性能。


二、解决方案
  • 法一:命令启动

    # 启动多个 node.js项目进程(进程数量 = cpu核数量)
      pm2 start app.js -i 0
  • 法二:配置文件启动

    // 1、配置文件(processes.json),设置如下
    module.exports = {
        apps: [{
            script: "api.js",
            instances: "max",
            exec_mode: "cluster", // 开启进程间的负载均衡模式
        }]
    }
    # 2、用配置文件启动 node.js 项目
      pm2 start processes.json

三、其他重要说明
1、-i 后面的数字说明
  • 0/max :开启进程数量 == cpu核数量
  • -1:进程数量 == cpu核数量 - 1

四、参考文档

你可能感兴趣的