diff --git a/ecosystem.config.cjs b/ecosystem.config.cjs index cf4094c..0effbf2 100644 --- a/ecosystem.config.cjs +++ b/ecosystem.config.cjs @@ -1,7 +1,18 @@ +// Crash-loop governor: after max_restarts attempts that each fail to stay up +// min_uptime ms, PM2 marks the app `errored` and stops relaunching it, instead +// of restarting forever and pegging the CPU. +const RESTART_POLICY = { + max_restarts: 10, + min_uptime: 10000, + exp_backoff_restart_delay: 200, +}; + module.exports = { apps: [ { name: 'linkweb', + ...RESTART_POLICY, + cwd: __dirname, script: 'server.js', env: { NODE_ENV: 'production',