我还是 pm2 的新手,目前正试图让节点应用运行。这项工作正常,但应用程序无任何原因重新启动。
该应用程序运行良好,没有任何崩溃在开发机器上。日志文件不显示任何崩溃。 (已经测试过日志文件会记录崩溃。)
我是否将pm2配置错误了?
{
"name" : "app1",
"cwd" : "/home/pm2/apps/app1/prod",
"script" : "dist/main.js",
"log_date_format" : "YYYY-MM-DD HH:mm Z",
"error_file" : "/home/pm2/apps/app1/logs/stderr.log",
"out_file" : "/home/pm2/apps/app1/logs/stdout.log",
"pid_file" : "/home/pm2/apps/app1/pids/app1.pid",
"instances" : 1, //or 0 => 'max'
"min_uptime" : "200s", // 200 seconds, defaults to 1000
"max_restarts" : 10, // defaults to 15
"max_memory_restart": "1M", // 1 megabytes, e.g.: "2G", "10M", "100K", 1024 the default unit is byte.
"cron_restart" : "1 0 * * *",
"watch" : false,
"ignore_watch" : "./logs",
"exec_interpreter" : "node",
"env": {
"NODE_ENV": "production"
}
}
2016-10-24 14:28 +02:00: server listening on port 3100
2016-10-24 14:28 +02:00: server listening on port 3100
2016-10-24 14:29 +02:00: server listening on port 3100
2016-10-24 14:29 +02:00: server listening on port 3100
2016-10-24 14:30 +02:00: server listening on port 3100
2016-10-24 14:30 +02:00: server listening on port 3100
//empty...
答案 0 :(得分:4)
该指令可能有问题:' max_memory_restart'。一兆字节的应用程序价值非常低。尝试增加到大约200MB - 取决于您的应用程序内存要求。
编辑:此指令表示可以消耗的最大内存量。如果进程将分配更多,它将重新启动。