Stream module in nodeJS
Introduction
- A stream is an abstract interface for working with streaming data in Node.js
- The stream module provides an API for implementing the stream interface
- There are many stream objects provided by Node.js
- For instance, a request to an HTTP server and process.stdout are both stream instances
- Streams can be readable, writable, or both. All streams are instances of EventEmitter
Types of streams
- Writable: streams to which data can be written (for example, fs.createWriteStream())
- Readable: streams from which data can be read (for example, fs.createReadStream())
- Duplex: streams that are both Readable and Writable (for example, net.Socket)
- Transform: Duplex streams that can modify or transform the data as it is written and read (for example, zlib.createDeflate())