STREAM TRONG NODEJS.


Stream là một kiến trúc cơ bản khác trong nodejs bổ sung cho sự bất đồng bộ mã trong nodejs, stream cho phép bạn thực thi tiến trình tạo hoặc lây lại dữ liệu, stream có thể đọc , ghi hoặc cả 2.
Stream sử dụng các sự kiện để làm việc  với dữ liệu khi các sự kiện dc thực thi .
Ví dụ sau ta copy 1 file : node cp.js src.txt des.txt

var fs = require('fs');
console.log(process.argv[2], '->', process.argv[3]);
var readStream = fs.createReadStream(process.argv[2]);
var writeStream = fs.createWriteStream(process.argv[3]);
readStream.on('data', function (chunk) {
  writeStream.write(chunk);
});
readStream.on('end', function () {
  writeStream.end();
});
//Some basic error handling
readStream.on('error', function (err) {
  console.log("ERROR", err);
});
writeStream.on('error', function (err) {
  console.log("ERROR", err);
});


Đầu tiên ta tạo luồng dữ liệu đọc từ file nguồn và luồng dữ liệu ghi đến file đích. Sau đó, luồng dữ liệu ghi sẽ lấy thong tin từ file nguồn và ghi vào file đích trong luồng dữ liệu ghi.Cuối cùng,  nó đóng luồng dữ liệu ghi sau khi luông dữ liệu đọc hoàn thành.Sẽ tốt hơn nếu có sử dụng pipe như hàm sau: readStream.pipe(writeStream) 

Nhận xét

Bài đăng phổ biến từ blog này

Trang web medium.com chết, vì sao ?

Cách sử dụng sys.argv trong python.

Thiết kế một RESTful API bằng python và flask.