У меня есть серверное приложение Node.js, работающее в системе Unix. Я запускаю сценарий с помощью следующей команды, используя pm2:
pm2 start server.js -i max -o ./logs/out.log -e ./logs/err.log
Мобильные устройства подключаются к серверу для загрузки данных. В пиковое время к серверу одновременно подключаются около 75 устройств. После того как сервер успешно проработал около 3 недель, вчера он перестал работать. Это означает, что сервер и pm2 больше не отвечали. После перезапуска машины все снова заработало.
Моя команда верна для запуска сервера? Я тоже использую кластерный режим. В документации написано, что нужно установить exec_mode
на cluster
, чтобы PM2 знал, что вы хотите балансировать нагрузку между каждым экземпляром. Обязательно ли это делать?
В другом посте я прочитал, что лучше использовать pm2 start app.js -x max
и что в этом кластерном режиме есть проблемы с памятью.