This commit is contained in:
Philippe Torrel
2026-10-01 10:37:23 +02:00
parent 58bdd6018f
commit 02b3745b88
8 changed files with 197 additions and 9 deletions
+17 -3
View File
@@ -8,9 +8,13 @@ const gzipCompressor = zlib.createGzip();
const inputStream = fs.createReadStream('data/products.html');
const outputStream = fs.createWriteStream('data/products.html.gz');
inputStream.on('data', (data) => {
console.log('Pakete (data chunks) werden geladen: ', data.length);
outputStream.write(zlib.gzipSync(data));
inputStream.on('data', (chunk) => {
console.log('Pakete (data chunks) werden geladen: ', chunk.length);
// outputStream.write(zlib.gzipSync(data));
});
outputStream.on('finish', () => {
console.log('Process finished');
});
inputStream.pipe(gzipCompressor).pipe(outputStream);
@@ -21,3 +25,13 @@ inputStream.pipe(gzipCompressor).pipe(outputStream);
// TIPP: Um eine Datei päckchenweise lesen- und schreiben zu können, gibt es für das fs Modul die Methoden createReadStream und createWriteStream.
// ÜBUNG BEREITS GELÖST!!!
// Die wichtigsten WritableStream-Events im Überblick
// - 'finish': Feuert, nachdem stream.end() aufgerufen wurde und alle gepufferten Daten erfolgreich auf das Ziellaufwerk geschrieben wurden.
// - 'close': Feuert, wenn der zugrundeliegende File Descriptor / die Ressource vollständig geschlossen wurde.
// - 'drain': Feuert, wenn der interne Puffer voll war (write() gab false zurück) und nun wieder bereit für neue Daten ist.
// - 'error': Feuert, wenn beim Schreiben ein Fehler auftritt (z. B. fehlende Schreibrechte oder volle Festplatte).