快速了解Node中的Stream流是什么
Stream
Buffer 的工作原理
- Data 是一塊大數(shù)據(jù)
- 他被分為很多個小數(shù)據(jù)
- 每塊小數(shù)據(jù)都被存儲在內(nèi)存中的 Buffer 中
- 接著 Buffer 不斷接收小數(shù)據(jù)
- 同時一旦 Buffer 接收的小數(shù)據(jù)填滿了就會被消費
- 填滿的 Buffer 也被稱為一個 Chunk
- 所有 Chunk 組合而成的才是那塊 Data 大數(shù)據(jù)
Stream 的分類
- Read Stream
- Write Stream
- Duplex
- Transform
Duplex 實際上就是有兩個 Buffer 一個處理 ReadStream 另一個是處理 WriteStream;典型的例子就是 Network Socket
Transform 實際上有三個 Buffer 串聯(lián)一起,中間的 Buffer 實際上就是類似中轉(zhuǎn)的運輸作用,也可以從中修改數(shù)據(jù);典型的例子就是 encoding/decoding, Compressing/Decompressing, Filtering data, JS to JSON
pipe
pipe 的概念就相當(dāng)于一個“水管”,將 readable 連接至 writable
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
koa-router路由參數(shù)和前端路由的結(jié)合詳解
這篇文章主要給大家介紹了關(guān)于koa-router路由參數(shù)和前端路由的結(jié)合的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用koa-router具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05淺談Node.js ORM框架Sequlize之表間關(guān)系
下面小編就為大家?guī)硪黄獪\談Node.js ORM框架Sequlize之表間關(guān)系。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07Node.js學(xué)習(xí)之內(nèi)置模塊fs用法示例
這篇文章主要介紹了Node.js學(xué)習(xí)之內(nèi)置模塊fs用法,結(jié)合實例形式詳細(xì)分析了node.js內(nèi)置模塊fs的基本功能、用法與相關(guān)操作注意事項,需要的朋友可以參考下2020-01-01node靜態(tài)服務(wù)器實現(xiàn)靜態(tài)讀取文件或文件夾
這篇文章主要介紹了node靜態(tài)服務(wù)器實現(xiàn)靜態(tài)讀取文件或文件夾,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12如何用Node.js編寫內(nèi)存效率高的應(yīng)用程序
這篇文章主要介紹了如何用Node.js編寫內(nèi)存效率高的應(yīng)用程序,對Node.js感興趣的同學(xué),可以參考下2021-04-04