Streaming en Node.js: Guía con ejemplos

Guía completa de streams en Node.js con ejemplos prácticos: lectura y escritura eficientes, pipes y transform, casos de uso y buenas prácticas.

3 sept 2025 • 3 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Streaming en Node.js: guía completa con ejemplos y consejos prácticos

Cuando trabajas con archivos pesados como videos, imágenes, logs o CSV, o cuando procesas datos en tiempo real, cargar todo el contenido en memoria no es eficiente. Ahí es donde entran en juego los streams de Node.js.

En lugar de leer o escribir el archivo completo de una sola vez, los streams fragmentan los datos en trozos pequeños. Este enfoque hace que las aplicaciones en Node.js sean más rápidas, escalables y con menor consumo de memoria.

Qué son los streams en Node.js

Los streams son objetos nativos que permiten leer o escribir datos por partes, a medida que están disponibles. Existen cuatro tipos principales: Readable para leer datos como con fs.createReadStream, Writable para escribir datos como con fs.createWriteStream, Duplex que permite leer y escribir a la vez como en sockets TCP, y Transform que modifica los datos en el camino como al comprimir archivos.

Ventajas de usar streams

Permiten manejar archivos grandes sin derribar el servidor, mejoran el rendimiento y la escalabilidad, habilitan el procesamiento en tiempo real como chat, streaming de video o sistemas de logging, y reducen el uso de memoria.

Ejemplo 1 Lectura de archivos con streams

En lugar de usar fs.readFile, crea un flujo legible con fs.createReadStream indicando por ejemplo encoding utf-8 y highWaterMark 64 * 1024 para leer en bloques de 64 KB. Suscríbete al evento data para procesar cada chunk y al evento end para saber cuándo finalizó la lectura. Así el archivo se procesa en partes y no de una vez.

Ejemplo 2 Copia de archivos con pipe

Crea un flujo de lectura desde input.txt con fs.createReadStream y uno de escritura hacia output.txt con fs.createWriteStream. Luego conecta ambos con readable.pipe writable. El sistema copiará el archivo eficientemente sin cargarlo completo en memoria.

Ejemplo 3 Streaming de una respuesta HTTP

En un servidor HTTP, abre un flujo con fs.createReadStream sobre un archivo grande como video.mp4. Escribe el encabezado con estado 200 y Content-Type video/mp4 y después encadena stream.pipe res. El servidor enviará el video por trozos conforme se leen del disco, ideal para contenido multimedia.

Ejemplo 4 Transform streams para compresión

Usa zlib para comprimir sobre la marcha. Abre fs.createReadStream sobre input.txt, crea un flujo de escritura hacia input.txt.gz y conecta readable.pipe zlib.createGzip pipe compressed. Lograrás comprimir archivos de forma eficiente, útil para logs, backups y optimizar almacenamiento.

Casos de uso habituales

Streaming de video y audio, subidas y descargas de archivos de gran tamaño, procesamiento de logs en tiempo real, chat y mensajería con WebSockets, y construcción de data pipelines para ETL.

Buenas prácticas rápidas

Ajusta highWaterMark para optimizar el tamaño de los buffers, maneja errores en todos los streams con eventos error, aprovecha pipe y pipe encadenados para mantener el código claro, y considera backpressure para no saturar destinos lentos.

Cómo te ayuda Q2BSTUDIO

En Q2BSTUDIO diseñamos y construimos aplicaciones a medida y software a medida con Node.js, optimizadas para alto rendimiento y streaming, integrando además inteligencia artificial, ia para empresas y agentes IA cuando tu caso de uso lo requiere. Si quieres crear una API de streaming, un sistema de ingesta de datos o una plataforma multimedia, descubre nuestro servicio de desarrollo de aplicaciones y software multiplataforma orientado a escalabilidad y seguridad.

Además, desplegamos y operamos arquitecturas de streaming en servicios cloud aws y azure, con balanceadores, CDN, colas y almacenamiento eficiente. Si buscas resiliencia, observabilidad y costos controlados, conoce nuestros servicios cloud en AWS y Azure. También ofrecemos ciberseguridad y pentesting, automatización de procesos, servicios inteligencia de negocio con power bi y soluciones de ciberseguridad para proteger datos y flujos críticos.

Conclusión

Los streams son una de las mayores fortalezas de Node.js para procesar grandes volúmenes de datos sin saturar la memoria. Ya sea copiando archivos, sirviendo videos o comprimiendo información, te ayudan a construir sistemas escalables y de alto rendimiento. Si tu objetivo es dar el salto en 2025 con arquitecturas listas para producción, Q2BSTUDIO puede acompañarte con estrategia, ingeniería y ejecución, combinando inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio y power bi para que tu plataforma crezca con garantías.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat