Node.js
Multiproceso, cluster y escalado
Estrategias de escalado horizontal en Node.js mediante múltiples procesos, cluster, balanceo de carga, estado compartido y coordinación del ciclo de vida.
- Última actualización
- Actualizada
- Nivel
- Profundización
Node.js
Estrategias de escalado horizontal en Node.js mediante múltiples procesos, cluster, balanceo de carga, estado compartido y coordinación del ciclo de vida.
El módulo cluster permite workers como procesos que pueden aceptar conexiones sobre un puerto compartido. Sigue disponible, pero muchas plataformas modernas prefieren múltiples procesos o containers gestionados externamente.
No comparte heap: cada worker tiene memoria independiente.
Escalar horizontalmente requiere mover estado compartido fuera del proceso o aceptar afinidad explícita.
Mantienen un cliente en una instancia, útiles para ciertos protocolos, pero reducen flexibilidad y no sustituyen un almacén compartido.
No uses un endpoint que siempre responda 200 sin verificar dependencias necesarias.
marcar no-ready
↓
dejar de aceptar conexiones
↓
drenar requests
↓
cerrar recursos
↓
terminarMás procesos no garantizan más throughput si la base de datos o dependencia es el cuello.
Supervisan reinicio, señales, logs y número de réplicas. Node sigue siendo responsable de shutdown y health correctos.
Testing con node:test protege comportamiento y recursos.