2016-05-19 4 views
0

У меня есть несколько экземпляров сервера. У меня есть s3 смонтированное место для синхронизации файлов. И мне нужно обновлять эти файлы по одному ... поэтому я хочу сделать блокировку этого файла, чтобы любой другой экземпляр не мог работать над этим файлом, когда он уже работает.заблокировать файл вокруг разных серверов nodejs

nodejs npm для LOCK работают хорошо только для сервера, а не для всех экземпляров.

Есть ли возможный обходной путь для этого?

+0

Почему у меня был отрицательный голос ... по крайней мере Объясните ... прежде чем делать это – user5821368

ответ

0

Мое решение разрешено не блокировкой npm, к сожалению, потому что я думаю, что эти блокировки находятся на операционной системе, и у меня есть несколько серверов, поэтому я сделал это с помощью ручного метода.

Я создал файл с байтом по имени Lock (случайное имя), прежде чем что-то сделаю, поэтому, если другой процесс обнаружит существующий файл, он предположит, что есть блокировка, и вернется с обратным вызовом false.

Это хорошо работает во всех экземплярах.