了解流背压

时间:2019-03-27 18:23:51

标签: javascript stream pipe backpressure node-archiver

我正在尝试了解Nodejs中的流反压。阅读https://nodejs.org/en/docs/guides/backpressuring-in-streams/之后,我就会掌握基础知识。但是我对不能直接使用管道的方案应该怎么办感到困惑。

例如如果我将文件流下载到zip中。

nrow(cluster_design[1:10,])
#> 10
nrow(raked_design[1:10,])
#> 183

基本上我想知道是否

var fs = require('fs');
const request = require('request');
const archiver = require('archiver');


var output = fs.createWriteStream('stream_to_zip.zip');
var archive = archiver('zip', {
  zlib: { level: 9 }
});
// pipe archive data to the file
archive.pipe(output);

const stream = request('https://i.imgur.com/FI0XpDV.jpg');
archive.append(stream, { name: 'pictures/dog.jpg' });

const stream2 = request('https://i.imgur.com/iqz0XlX.jpg');
archive.append(stream2, { name: 'pictures/holiday.jpg' });

archive.finalize();

受到反压保护吗?对我来说很突出,因为我不能简单地打电话给

archive.append(stream, { name: 'pictures/dog.jpg' });

我需要指定文件名。

0 个答案:

没有答案