Node.js의 스트림은 특히 대용량 데이터로 작업할 때 I/O 작업을 효율적으로 처리하는 강력한 방법입니다. 데이터를 한꺼번에 읽고 쓰는 대신 스트림을 사용하면 데이터를 덩어리로 처리하여 성능이 향상되고 메모리 소비가 줄어듭니다.
Node.js는 네 가지 유형의 스트림을 제공합니다.
Stream Type | Description | Example |
---|---|---|
Readable Streams | Used for reading data | Reading from a file |
Writable Streams | Used for writing data | Writing to a file |
Duplex Streams | Both readable and writable | Sockets |
Transform Streams | A type of duplex stream where data can be modified as it is read or written | Compression |
읽기 가능한 스트림
end
const fs = require('fs'); const readableStream = fs.createReadStream('example.txt', { encoding: 'utf8' }); readableStream.on('data', (chunk) => { console.log('Received chunk:', chunk); }); readableStream.on('end', () => { console.log('No more data.'); }); readableStream.on('error', (err) => { console.error('Error:', err); });
const fs = require('fs'); const writableStream = fs.createWriteStream('output.txt'); writableStream.write('Hello, Node.js streams!\n'); writableStream.end(); // Close the stream writableStream.on('finish', () => { console.log('Finished writing.'); }); writableStream.on('error', (err) => { console.error('Error:', err); });
readableStream.pipe(writableStream);
스트림은 대용량 데이터를 효율적으로 처리하는 데 도움이 됩니다. 예를 들어 파일 작업 시 스트림을 사용하면 전체 파일을 메모리에 로드하는 것을 방지할 수 있습니다. 이는 미디어 파일, 대규모 데이터세트 또는 HTTP 요청 데이터를 처리할 때 특히 유용합니다.
최종 팁
위 내용은 Node.js의 스트림 - 튜토리얼 - 7부의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!