正确使用节点的PM2?

use*_*947 3 javascript node.js pm2

我正在考虑从永远切换到PM2以保持我的节点应用程序正常运行.

我对以下推荐的启动流程的方法感到困惑:

$ pm2 start app.js -i 4 # Daemonize pm2 and Start 4 clustered instances of app.js
                        # You can also pass the 'max' params to start
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释什么是app.js的集群实例?我应该开多少个实例?1?马克斯?

Uni*_*ech 8

群集应用程序意味着复制应用程序以使用每个cpu而不是只有一个,

如果你这样做:

$ pm2 start app.js
Run Code Online (Sandbox Code Playgroud)

它只会启动一个应用程序

如果你这样做:

$ pm2 start app.js -i max
Run Code Online (Sandbox Code Playgroud)

它将根据可用的cpu数量启动最大数量的应用程序,因此如果它是一个联网的应用程序,请求将在所有进程之间平衡!