Чтение многих файлов
Здравствуйте,
Такой вопрос. У меня есть большой лист путей к файлам в локальном диске, около 0,5 миллионов. Как можно сделать fs.createReadStream, чтобы не выдавал ошибку, типа "читаю слишком много файлов". Если это разбивание листа на маленькие листы ~1000, как это сделать. Какой в этом случае best practice? Спасибо. |
можно использовать библиотеку async и для твоей коллекции вызвать
async.eachLimit это как раз твой случай. Вторым параметром указываешь, сколько максимум файлов можно обрабатывать одновременно. |
Цитата:
var async = require('async'); var queue = async.queue(function(filename, callback) { //работа с файлами }, 1000); for (var i = 0; i < files.length; i++) { queue.push(files[i]); } |
Часовой пояс GMT +3, время: 03:37. |