Сервис Nodejs останавливается автоматически - PullRequest
0 голосов
/ 06 марта 2019

мы работаем над проектом, в котором мы использовали node-js в фоновом сокете для продолжения ответа на веб-приложение.В промежутке между тем иногда какой-то процесс останавливается автоматически.

Мы хотели бы знать, как мы можем проверить весь процесс, запущенный навсегда.

Мы используем список sudo forever для вывода списка всех процессов.Есть ли способ использовать эту команду (навсегда список) в .sh (файл сценария оболочки), чтобы проверить мой конкретный процесс, как работает responseclient или нет.Если этот конкретный процесс не работает, нам нужно его запустить.

1 Ответ

0 голосов
/ 06 марта 2019

Существует несколько решений, обеспечивающих постоянную работу вашего сервиса.

Один из них даже называется forever. Здесь у вас есть обзор, подготовленный express .

Тем не менее, для производственных услуг я рекомендую пассажир Результат почти такой же, но гораздо большую масштабируемость. Например, вы можете настроить автоматическое добавление другого экземпляра.

Почти - потому что он предназначен для обеспечения доступности HTTP, а не постоянной работы приложения.

КСТАТИ: служба останавливается, потому что у вас есть исключение.

Обновление

Если вы настаиваете на forever, то: (Мы говорим об одном и том же навсегда ?)

  • Убедитесь, что forever запущен тем же пользователем. forever имеет отдельных менеджеров для всех пользователей.
  • Убедитесь, что вы сохранили свои данные в том же месте. (автоматический запуск, например, cron отличается от ручного запуска (переменные в env))
  • forever имеет --pidFile - тогда очень легко проверить, работает ли процесс
  • также ps -aux | grep node должен быть вашим большим другом.

Нет, у меня нет его в сочетании. Когда у меня начались проблемы, я переключился на passenger. В конце концов, я сделал это хорошо, потому что у меня есть профессиональный мониторинг, который я запустил за меньшее время, чем поиск, как объединить вышеупомянутые пункты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...