INFO:Я имею в виду this вопрос, я спросил о Super User, но не смог получить ответ, и я думаю, что это хорошее место, чтобы спросить, так как проблема, вероятно, связана с кодом.HTTP-сервер останавливается через некоторое время (Node.js)
В настоящее время я запускаю простой сервер Node.JS с express.js на моем RaspberryPi с установленным на нем Debian. Все работает нормально, но каждое утро я просыпаюсь, чтобы увидеть, что мой сервер больше не работает (серверный процесс я начал с команды node main.js
).
Мое первое предположение заключалось в том, что у Pi есть какой-то спящий режим, через который он входит через пару часов без трафика и т. Д., И который выключает сервер, но я также запускаю dydns-client, который все еще каждое утро (Мне также сообщили, что RaspberryPi не приходит в спящий режим).
Я написал простой скрипт, чтобы проверить, запущен ли процесс и записывает его в файл журнала, но сегодня утром я должен был заметить, что этот скрипт тоже не работал (всего около двух часов он регистрирует состояние сервера каждые 15 секунд, а последнее состояние - работает).
Вот сценарий:
#!/bin/sh
MATCH="SOME_PROCESS_NAME"
while [ true ]
do
if [ "$(ps -ef | grep ${MATCH} | grep -v grep)" ]; then
echo "$(date): Process is running ..."
else
echo "$(date): Process has ended ..."
fi
sleep 15
done
Есть ли способ, чтобы отслеживать процесс после того, как я начал это, чтобы проверить завтра утром, что убило мой процесс и почему он закончился (сценарий, очевидно, не Работа)?
Сам сервер выглядит довольно простым, и я не думаю, что есть какое-то автоматическое выключение, которое я пропустил. Вот код, который я использовал.
var express = require('express');
var path = require('path');
var server = express();
server.use(express.static(path.join(__dirname, 'public')));
server.listen(1337);
console.log("Server listening (PORT: " + 1337 + ") ...");
Любая идея, что делать, чтобы сервер работал/узнал, что является причиной остановки?
ОБНОВЛЕНИЕ: Я получил рабочий ответ по адресу RaspberryPi -stackexchange.
Как вы начинаете эти процессы в Начать с? Похоже, что они могут быть убиты ['SIGHUP'] (https://en.wikipedia.org/wiki/SIGHUP). – robertklep
@robertklep Да, я получил аналогичный ответ на [RaspberryPi.stackexchange] (http://raspberrypi.stackexchange.com/questions/47139/http-server-stops-after-some-time?noredirect1_comment70299_47139) и я тестирую его прямо сейчас :) – LastSecondsToLive