管道大文件需要大量内存

时间:2014-06-16 06:05:01

标签: node.js express stream

我有一个程序,它从流中读取一个大文件并将其写入文件。

这是从流

中读取文件
var stream = new Stream.PassThrough();

Request(options, function (error, res, body) {
    if (error) {
         Logger.error('ProxyManager', 'getStream', error);
         return callback(error);
      }
}).pipe(stream); // first pipe call

这是写文件

var outputFile = fs.createWriteStream(filePath);
stream.pipe(outputFile); // second pipe call

我的问题是当传输一个大文件时,进程需要大量内存,这似乎是管道将整个文件保留在第一个管道或第二个调用的内存中。任何人都可以帮忙吗?

0 个答案:

没有答案