Mi aplicación Node.Js Docker se ejecuta en pm2 y usa la siguiente configuración:
module.exports = [ { script: 'dist/src/main.js', name: 'infrasonic', exec_mode: 'fork_mode', autorestart: true, env: { NODE_ENV: 'production', }, env_development: { NODE_ENV: 'development', }, watch: process.env.NODE_ENV == 'development' ? true : false, watch_delay: 60000, ignore_watch: ['node_modules'], max_memory_restart: '1G', }, ];en esta configuración, si mi aplicación no responde durante aproximadamente un minuto, PM2 reinicia la aplicación.
No quiero este comportamiento, así que quiero que espere al menos 2 minutos sin responder antes de reiniciar la aplicación.
Reescribí el archivo ecosystem.config.js de la siguiente manera:
module.exports = [ { script: 'dist/src/main.js', name: 'infrasonic', exec_mode: 'cluster', instances: 1, autorestart: true, env: { NODE_ENV: 'production', }, env_development: { NODE_ENV: 'development', }, watch: process.env.NODE_ENV == 'development' ? true : false, watch_delay: 60000, ignore_watch: ['node_modules'], max_memory_restart: '1G', }, ];cambiarlo al modo de clúster como lo leí tiene 0 tiempo de inactividad.
¿Cree que hay otra solución en la que pueda especificar la duración de la falta de respuesta (120 segundos) directamente después de que PM2 se reinicie?