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

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 JSONspa

pipe

20190115011330.png

pipe 的概念就至关于一个“水管”,将 readable 链接至 writableorm

相关文章
相关标签/搜索