快速了解 Node 中的 Stream 流是什么

本文深入探讨了Stream Buffer的工作原理,解释了大数据如何被分解为小数据并存储于内存Buffer中,以及Buffer如何接收和消费数据形成Chunk的过程。此外,还介绍了Stream的四种类型:ReadStream、WriteStream、Duplex和Transform,并通过实例说明了pipe概念的应用。

Stream

Buffer 的工作原理

20190115005634.png

  • Data 是一块大数据
  • 他被分为很多个小数据
  • 每块小数据都被存储在内存中的 Buffer 中

20190115005751.png

  • 接着 Buffer 不断接收小数据
  • 同时一旦 Buffer 接收的小数据填满了就会被消费
  • 填满的 Buffer 也被称为一个 Chunk
  • 所有 Chunk 组合而成的才是那块 Data 大数据

Stream 的分类

  • Read Stream
  • Write Stream
  • Duplex
  • Transform

20190115010717.png

Duplex 实际上就是有两个 Buffer 一个处理 ReadStream 另一个是处理 WriteStream;典型的例子就是 Network Socket

20190115011020.png

Transform 实际上有三个 Buffer 串联一起,中间的 Buffer 实际上就是类似中转的运输作用,也可以从中修改数据;典型的例子就是 encoding/decoding, Compressing/Decompressing, Filtering data, JS to JSON

pipe

20190115011330.png

pipe 的概念就相当于一个“水管”,将 readable 连接至 writable

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值