# Balanceador de carga

> El agente de tránsito que reparte los pedidos que llegan entre muchos servidores.

- Nivel: Intermedio
- Temas: Redes, Cloud
- URL: https://tidbit.legios.com.ar/es/load-balancer/
- En inglés: [Load balancer](https://tidbit.legios.com.ar/load-balancer/)

Un **balanceador de carga** se para adelante de un grupo de servidores y reparte entre ellos los pedidos que llegan. Todos los usuarios se conectan a una sola dirección (la del balanceador); detrás, el mismo sitio o la misma API corre en dos, diez o mil máquinas idénticas, y cada pedido va a parar a una de ellas. El usuario nunca sabe a cuál.

Resuelve dos problemas a la vez. **Capacidad**: un servidor aguanta una cantidad limitada de pedidos por segundo, así que agregás más y dividís la carga. **Disponibilidad**: el balanceador revisa la salud de cada servidor cada pocos segundos y deja de mandarle tráfico al que falla, así que una máquina caída significa una flota un poco más ocupada en vez de un sitio caído. También te deja actualizar los servidores de a uno sin cortar el servicio.

Los balanceadores eligen servidor con reglas simples (round robin, menos conexiones, por región) y muchos además terminan HTTPS, así el certificado TLS vive en un solo lugar. En la nube es un servicio administrado: AWS tiene el Application Load Balancer y el Network Load Balancer, y plataformas como Kubernetes traen uno integrado. Combinado con autoscaling (sumar servidores cuando hay demanda, sacarlos cuando no), el balanceador de carga es lo que permite que un sitio sobreviva a salir en las noticias.

## Una analogía

La persona en la entrada del banco que manda a cada cliente a la próxima caja libre. Diez cajas, una sola fila; si un cajero sale a descansar, no le mandan a nadie.

## Para quedarse

- Una sola dirección pública adelante, muchos servidores idénticos atrás.
- Los chequeos de salud sacan de la rotación a un servidor roto automáticamente.
- Es lo que hace posibles los deploys sin cortes y el autoscaling.
- Muchas veces también termina HTTPS, así los certificados viven en un solo lugar.

## Para seguir leyendo

- [¿Qué es el balanceo de carga? (Cloudflare)](https://www.cloudflare.com/es-es/learning/performance/what-is-load-balancing/)
- [Balanceador de carga (Wikipedia)](https://es.wikipedia.org/wiki/Balanceador_de_carga)

## Términos relacionados

- [Servidor](https://tidbit.legios.com.ar/es/server/): Una computadora cuyo trabajo es responder pedidos de otras computadoras, todo el día.
- [API](https://tidbit.legios.com.ar/es/api/): El menú de cosas que un programa le deja pedir a otro programa.
- [Regiones y zonas de disponibilidad](https://tidbit.legios.com.ar/es/regions-and-availability-zones/): Dónde vive AWS físicamente: ciudades del mundo, cada una con varios centros de datos.
- [HTTPS](https://tidbit.legios.com.ar/es/https/): El candadito del navegador: tráfico web que nadie en el medio puede leer.
- [Certificado TLS](https://tidbit.legios.com.ar/es/tls-certificate/): La credencial que un sitio le muestra a tu navegador para probar que es quien dice ser.
- [Computación en la nube](https://tidbit.legios.com.ar/es/cloud-computing/): Alquilar computadoras por internet en vez de comprar las tuyas.
- [Kubernetes](https://tidbit.legios.com.ar/es/kubernetes/): El sistema que corre y cuida contenedores en muchas máquinas a la vez.
- [Autoescalado](https://tidbit.legios.com.ar/es/autoscaling/): Sumar y sacar servidores en forma automática a medida que sube y baja la demanda.
