В настоящее время я использую веб-службу NodeJs для запуска некоторых сценариев casper.js по запросу. Поскольку casper.js использует stdout, поскольку он является каналом связи к узлу, а узел запускает casper в качестве дочернего процесса, я не могу запускать узел в качестве службы Windows, используя nssm, как и для других наших сервисов узла, поэтому он запускается при запуске сервера как запланированная задача.Начать независимый процесс от NodeJs
Это работает, но теперь мне нужно произвести этот код и действительно нужно сделать его более устойчивым к сбою - то есть мне нужно перезапустить службу, если она не удалась.
Мои варианты, насколько я могу видеть их являются ....
- Запуск службы узла на коробке Linux, а затем стандартный вывод должен работать, когда он работает как демон
- Каким-то образом сделать окна служба в состоянии «видеть» стандартный вывод
- Создание отдельного сервера узла (работает под NSSM), который может отслеживать службы и перезапустить его, если он не
до сих пор, я хотел бы избежать опционов один, если possi благодаря дополнительным хостинговым хостам. Я не могу найти что-нибудь, что поможет с вариантом второй, похоже, что службы Windows просто не работают.
Итак, сегодня я попытался создать службу мониторинга, которая могла бы перезапустить аварийную службу, если она не реагировала на биение. Проблема в том, что я не могу понять, как запустить полностью независимый сервер узлов из другого узла экземпляра. Если бы я должен был использовать дочерний процесс, тогда он по-прежнему является дочерним процессом службы и стандартным доктором.
Итак, возможно ли создать независимый процесс в узле? Есть ли другие предложения по решению этой проблемы?