Плавающая проблема с потоком request
Здравствуйте, уважаемые форумчане.
Нужна помощь.
Разрабатываем проект на node.js.
На фронте nginx. Запросы, адресованные на определённую директорию, директит на порт, на котором висят воркеры node.js (в процессе разработки кластером управляет пакет cluster).
В самом worker'е вкратце: const server = http.createServer(); server.on("request",function(req,res){//...});
Суть проблемы заключается в том, что если мы отлавливаем файл, который нам передаётся с фронта прямо вот в этой функции-обработчике события request, то он (поток) нормально перенаправляется в темп-файл (используется пакет tmp).
Условно говоря req.pipe(outStream), где outStream - открытый на запись в режиме потока только что созданный темп-файл, работает прекрасно.
Если же мы реквест (переменная req) внутри этой функции-обработчика передадим в другую функцию, то там в темп-файл не пишется ничего. Его размер остаётся нулевым.
Причём, так было три дня подряд. Затем внезапно заработало (без изменений в коде) и работало два дня.
А затем снова перестало.
Приветствуем любые идеи, почему это может происходить :-)
Банальные вещи, типа исчерпания места на диске, проблем с правами доступа на запись и т.п. не предлагать - проверено много раз)
|