Я создаю простой скрипт nodejs, который обновляет запись DNS на основе моего текущего IP. Скрипт работает нормально, но у меня есть некоторые опасения по поводу того, как его запустить. Проверка моего IP-адреса должна выполняться каждые 5 минут, и я столкнулся с дилеммой.
Следует ли мне использовать узел setInterval или мне следует создать задание cron? Что будет потреблять меньше всего ОЗУ и ЦП? Имейте в виду, что скрипт работает на Raspberry Pi Zero с оперативной памятью 512 МБ и только 1 ядром.
Я знаю, что cron
кажется лучшим вариантом, но насколько он лучше? Имеет ли это значение с учетом моих спецификаций?
Я согласен с Александром Т, что cron
, вероятно, будет лучше, но если ваше основное приложение чувствительно к фоновым процессам, это может быть лучше использовать демона.
Мое мнение, cron
лучше. Я думаю, что лучше запускать сценарий каждые 5 минут, чем запускать сценарий, который запускается каждые 5 минут. Например, если ваш сценарий умирает, что вы будете делать? С cron он просто запустится в следующий раз через 5 минут.
То же самое для памяти и процессора. Я не знаю, как node.js тратит память прямо сейчас, но раньше была проблема с утечкой памяти, и при длительной работе процесса могла возникнуть проблема. Что касается загрузки процессора, я думаю, никакой разницы нет.