是什么让我的节点应用程序使用pm2每30秒重启一次

时间:2016-10-24 12:40:21

标签: node.js server pm2

我还是 pm2 的新手,目前正试图让节点应用运行。这项工作正常,但应用程序无任何原因重新启动。

该应用程序运行良好,没有任何崩溃在开发机器上。日志文件不显示任何崩溃。 (已经测试过日志文件会记录崩溃。)

我是否将pm2配置错误了?

ecosystem.json

{
  "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"
  }
}

记录/ stdout.log

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

记录/ stderr.log

//empty...

1 个答案:

答案 0 :(得分:4)

该指令可能有问题:' max_memory_restart'。一兆字节的应用程序价值非常低。尝试增加到大约200MB - 取决于您的应用程序内存要求。

编辑:此指令表示可以消耗的最大内存量。如果进程将分配更多,它将重新启动。