Javascript PM2在运行时更改群集进程大小
有人知道在NodeJS PM2中是否可以在运行时更改应用程序的集群进程数吗 问候Javascript PM2在运行时更改群集进程大小,javascript,node.js,pm2,Javascript,Node.js,Pm2,有人知道在NodeJS PM2中是否可以在运行时更改应用程序的集群进程数吗 问候 Philipp以json格式指定pm2设置: { "apps": [{ "name": "server", "script" : "index.js", "instances": 2, "exec_mode: "cluster", "cwd": "/path/to/script" }] } 启动服务器: pm2 start application.json 假设要再添
Philipp以json格式指定pm2设置:
{
"apps": [{
"name": "server",
"script" : "index.js",
"instances": 2,
"exec_mode: "cluster",
"cwd": "/path/to/script"
}]
}
启动服务器:
pm2 start application.json
假设要再添加两个实例,只需再次运行相同的命令:
pm2 start application.json
检查流程列表:
pm2 list
要测试所有4个实例是否在群集模式下运行,请执行以下操作:
pm2 restart server
它将重新启动4个进程中的每一个。您可以使用
pm2 scale
在运行时垂直缩放进程数,请注意,它仅适用于群集模式。
例如:
将流程缩放到正好2个实例pm2 scale APPNAME 2
将添加两个过程pm2比例APPNAME+2
将删除一个进程pm2比例APPNAME-1
pm2 scale <app name> <n>
为了澄清,您是否询问在启动应用程序运行后是否可以更改群集进程的数量?请注意,“pm2缩放APPNAME 2”不会添加两个进程,而是缩放到总共两个进程。使用“+2”添加两个进程。请参阅我关于使用编程API进行缩放的回答。
错误:未知选项“-1”
pm2.scale(<APPNAME>, <SCALE_TO>, errback)
var pm2 = require('pm2');
pm2.connect(function (err) {
pm2.scale('appname', 4, function(err, procs) {
console.log('SCALE err: ', err);
console.log('SCALE procs: ', procs);
});
});