stream
即水流,但默认没有水
stream.write可以让水流中有水(数据)
每次写的小数据叫做chunk (块)
产生数据的一段叫做source (源头)
得到数据的一段叫做sink (水 池)
stream它将文件分为小块逐渐上传,而不是整个一次性上传,这样的好处有,降低内存的使用,但是上传或下载的时间变长。
管道
两个流可以用一个管道相连,stream1的末尾连接.上stream2的开端,只要stream1有数据,就会流到stream2。
stream1.pipt(stream2)
它也可以通过事件来实现
// stream1 已有数据就给stream2
stream1.on('data', (chunk)=>{
stream2.write(chunk)
})
// stream1停止stream2也随即停止
stream1.on('end', ()=>{
stream2.end()
})