Los balanceadores de carga reparten peticiones entre servidores backend y eliminan los no sanos. Round-robin y least-connections son comunes. Para apps con estado use sesiones sticky o estado en store compartido.
Cómo funciona
- Distribución: El LB reenvía cada petición a uno de los backends (servidores de app).
- Health checks: El LB hace probe a los backends (HTTP, TCP) y deja de enviar tráfico a los que fallan o van lentos.
- Punto de entrada único: Los clientes hablan con el LB; el LB oculta el número e identidad de los backends.
Algoritmos
- Round-robin: Rota por los backends en orden; simple y justo para cargas similares.
- Least connections: Envía al backend con menos conexiones activas; bueno para duración variable de peticiones.
- Weighted: Asigna más tráfico a backends más potentes; útil cuando los nodos tienen distinta capacidad.
Apps con estado
- Sesiones sticky: El LB envía al mismo cliente al mismo backend (por cookie o IP). Simple pero ata el cliente a un nodo.
- Estado compartido: Guarde sesión en Redis o BD para que cualquier backend sirva a cualquier usuario; mejor para escalar y failover.
- Stateless: Mejor opción; sin sesión en servidor; escale y reemplace nodos con libertad.
Resumen
Use un balanceador con health checks; elija round-robin, least-connections o weighted. Prefiera apps stateless o estado compartido frente a sesiones sticky para escalabilidad y resiliencia.




