Я установил сервер на DigitalOcean, который разработан с использованием Node.js & Socket.io. Процесс обрабатывается в режиме pm2 версия 3.0.4 на fork . Процесс не отвечает после ~ 2 часов пробега. Если я смотрю на "pm2 show"
или "pm2 monit"
, это показывает, что сервер подключен к сети.
Чтобы избежать этой проблемы, я также настроил задание cron, которое запускается каждые 1 час.
"0 */1 * * * /home/user/.nvm/versions/node/v8.11.4/bin/node /home/user/.nvm/versions/node/v8.11.4/bin/pm2 reload all"
однако это тоже не помогает.
В чем проблема? В настоящее время у меня есть только один пользователь, который тестирует его. У меня есть базовый план 2 ГБ для DigitalOcean, и общий объем памяти, используемой приложением, увеличился до 60 МБ во время мониторинга (во время которого оно перестало отвечать).
Может кто-нибудь помочь мне, как предотвратить эту проблему?
Обновление
Обновление задания cron для запуска перезагрузки pm2 каждые 30 минут начало устранять проблему. Но я уверен, что этого не ожидается.
"*/30 * * * * /home/user/.nvm/versions/node/v8.11.4/bin/node /home/user/.nvm/versions/node/v8.11.4/bin/pm2 reload all"