这两个都可以启动我的应用程序:
node app
pm2 start app.js
以下不起作用(应用程序无法正常工作,但PM2状态显示2个在线实例)并且不记录任何错误:
pm2 start app.js -i 2 --watch -l log/log.log
使用以下process.json文件启动也不起作用(但PM2状态仍然在线显示2个实例)并且不记录任何错误:
{
"apps" : [{
"name" : "app",
"script" : "./app.js",
"instances" : 0,
"exec_mode" : "cluster",
"watch" : true,
"ignore_watch" : ["tmp","public","images_review"],
"error_file" : "./logs/error.log",
"out_file" : "./logs/out.log",
"log_date_format" : "YYYY-MM-DD HH:mm Z",
}]
}
使用以下process.json文件以fork模式启动仍然无法正常运行,但会记录错误。
{
"apps" : [{
"name" : "app",
"script" : "./app.js",
"instances" : 0,
"watch" : true,
"ignore_watch" : ["tmp","public","images_review"],
"error_file" : "./logs/error.log",
"out_file" : "./logs/out.log",
"log_date_format" : "YYYY-MM-DD HH:mm Z",
}]
}
它记录的错误是“错误:听EADDRINUSE ::: 3000”。我检查了没有使用端口3000.我还切换了我的node.js应用程序使用不同的端口,它仍然为我尝试的每个端口提供EADDRINUSE错误。我正在使用Centos 7运行Plesk Onyx的2核心linode。我失踪了怎么回事?
答案 0 :(得分:1)
您可以尝试使用
运行它吗?pm2 start app.js -i 0 -l log/log.log
这使得pm2使用可用的最大内核数
然后您可以使用
实时查看日志pm2 logs
答案 1 :(得分:0)
以某种方式解决了 PM2版本。
问题:对于版本3.0.3,它无法在群集模式下运行。
但是,当 将PM2版本降级为3.0.0 ,它起作用了。
尽管同意@robertklep的评论。