Я запускаю кластер, в котором выполняются разные процессы.
Все работники используют require
для извлечения скрипта, и один из них вносит в него некоторые изменения во время выполнения.
AFAIK, для разных процессов другой контекст памяти и используют разные экземпляры Node.js (V8 + Libuv), поэтому другие работники не должны видеть эти изменения.
Но бывает, что когда я запускаю код, изменения видны каждый процесс.
Это объясняется тем, что Node.js caching
обеспечивает, , находясь в том же каталоге и npm модуль , тот же экземпляр кэшируется при выполнении require
.
Мой вопрос : если процессы запускают разные экземпляры Node.js в разных контекстах, какая сущность кэширует этот экземпляр для всех них?