Что такое потоковое чтение и запись (streams) в Node.js?

Потоки (streams) в Node.js — это интерфейсы для чтения и записи данных постепенно, без загрузки всего содержимого в память. Это особенно полезно для работы с большими файлами или потоками данных, такими как видео или большие текстовые файлы.

Короткий ответ

Потоки (streams) в  Node.js — это интерфейсы для чтения и записи данных постепенно, без загрузки всего содержимого в память. Это особенно полезно для работы с большими файлами или потоками данных, такими как видео или большие текстовые файлы.

Длинный ответ

Потоки (streams) в Node.js позволяют обрабатывать данные по частям, что делает их эффективными для работы с большими объемами данных или данных, поступающих постепенно. 

 

Потоки бывают четырех типов:

Readable (читаемые)

Writable (записываемые)

Duplex (читаемые и записываемые)

Transform (преобразующие)

 

Пример потокового чтения файла:

const fs = require('fs');
const readableStream = fs.createReadStream('largeFile.txt', { encoding: 'utf8' });

readableStream.on('data', (chunk) => {
  console.log('Получен кусок данных:', chunk);
});

readableStream.on('end', () => {
  console.log('Чтение завершено.');
});

 

Преимущества использования потоков:

 

Эффективность: Позволяют обрабатывать большие объемы данных без необходимости загружать все сразу в память.

Скорость: Ускоряют обработку данных, так как можно начать обработку данных до завершения их полной загрузки.

Гибкость: Потоки позволяют обрабатывать данные из разных источников (файлы, сетевые соединения, и т.д.) одинаково.

Уровень

  • Рейтинг:

    4

  • Сложность:

    6

Навыки

  • Node.js

Ключевые слова

Подпишись на Node.js Developer в телеграм