Служба Node-Windows запускает несколько экземпляров

Я выполняю некоторые задачи по управлению файлами через скрипт узла. Пакет node-windows включен, чтобы позволить мне запускать этот скрипт в качестве службы Windows. Сегодня утром я столкнулся с серьезной ошибкой, когда понял, что служба запустила дублирующийся экземпляр того же сценария. Это очень плохо, это повредило данные за 24 часа, потому что оба сценария пытались обрабатывать одни и те же наборы данных и в итоге уничтожали их. Я никогда не видел, чтобы служба Windows позволяла что-то подобное. У кого-нибудь еще была эта проблема или есть идеи, что ее вызывает?

1 ответ

Смотрите мой комментарий об экземплярах узловых окон.

Настоящая проблема, которая связана с повреждением данных, не имеет ничего общего с окнами узлов. Для этого скрипт узла должен иметь отказоустойчивость. В частности, он должен реализовывать блокировку файлов, что является стандартной практикой для предотвращения этого точного сценария.

Есть несколько доступных модулей блокировки файлов. lockfile - это то, что использует npm. Существует также другой проект под названием Proper-Lockfile, который решает проблему немного другим (более дружественным к Windows) способом.

Другие вопросы по тегам