Inicio/Tecnologías/Balanceador de carga: cómo funcionan y distribuyen millones de solicitudes
Tecnologías

Balanceador de carga: cómo funcionan y distribuyen millones de solicitudes

Un balanceador de carga permite repartir millones de solicitudes entre varios servidores, asegurando alta disponibilidad, escalabilidad y tolerancia a fallos. Descubre cómo funcionan, sus algoritmos y diferencias entre balanceo L4 y L7 para optimizar infraestructuras digitales.

15 sept 2026
10 min
Balanceador de carga: cómo funcionan y distribuyen millones de solicitudes

Un sitio web moderno, una aplicación o un servicio en línea rara vez funciona en un único servidor. Cuando llegan simultáneamente miles o millones de solicitudes, es necesario distribuir la carga entre varias máquinas. Precisamente esta tarea la realiza un balanceador de carga: un componente de la infraestructura que recibe las conexiones entrantes y las dirige a los servidores más adecuados.

Ayuda al sistema a soportar el crecimiento de la audiencia, reduce el riesgo de sobrecarga de servidores individuales y permite que el servicio siga funcionando incluso si una parte de la infraestructura falla.

¿Qué es un balanceador de carga y para qué sirve?

Un balanceador de carga es un componente de la infraestructura que actúa como intermediario entre los usuarios y un grupo de servidores. En lugar de que cada usuario se conecte a un servidor específico, todos llegan a un único punto de entrada. El balanceador decide entonces qué servidor debe procesar cada solicitud.

Esto ayuda a que el sistema soporte el crecimiento de la audiencia, reduce el riesgo de sobrecargar servidores individuales y permite que el servicio continúe funcionando incluso si parte de la infraestructura falla.

Por ejemplo, en una tienda online gestionada por cuatro servidores, sin balanceo algunos usuarios podrían acabar en un servidor saturado mientras otros servidores están casi inactivos. El balanceador distribuye el tráfico para que la carga sea lo más uniforme posible entre todas las máquinas.

Este método resulta esencial para servicios con muchos usuarios simultáneos. Aumentar la capacidad de un solo servidor rápidamente enfrenta límites técnicos y económicos. Es mucho más eficiente añadir nuevos servidores y repartir la carga entre ellos.

El balanceador también oculta la estructura interna de la infraestructura: para el usuario, el servicio parece un único sistema, aunque detrás trabajen docenas o cientos de servidores.

No sólo los sitios web emplean balanceadores de carga, sino también APIs, plataformas en la nube, apps móviles, servicios de juegos, sistemas de vídeo en streaming y otros proyectos de alta demanda.

Otra función clave es evitar enviar solicitudes a servidores que están fuera de servicio. Si una máquina deja de responder, se la puede excluir temporalmente y redirigir el tráfico a los nodos que siguen operativos. Así, la caída de un servidor no implica la indisponibilidad del servicio completo.

¿Cómo distribuye las solicitudes el balanceador de carga?

Cuando un usuario accede a un sitio o aplicación, su solicitud llega primero al balanceador de carga. Este analiza los servidores disponibles y escoge uno para procesar la petición. Todo este proceso es transparente para el usuario, que ve el sistema como un único servicio.

El balanceador gestiona un pool de servidores, es decir, un conjunto de máquinas que cumplen la misma función. Cada nueva solicitud se dirige a uno de los nodos disponibles según un algoritmo predeterminado. Puede ser una selección secuencial simple o un análisis más avanzado considerando el número de conexiones activas, la carga actual o el tiempo de respuesta.

Para enviar el tráfico correctamente, el balanceador realiza comprobaciones de estado (health checks). Regularmente envía solicitudes de prueba a cada servidor para verificar que responden correctamente. Si un servidor falla o no pasa la comprobación, se lo excluye temporalmente del pool y los nuevos pedidos se dirigen solo a los equipos operativos. Una vez recuperado, el servidor vuelve al ciclo automáticamente.

Este enfoque es especialmente importante en sistemas distribuidos, donde un servicio puede estar compuesto por muchos nodos interconectados. Puedes leer más sobre los principios de esta arquitectura en Sistemas distribuidos: base invisible de la infraestructura digital.

Si la demanda crece, se pueden añadir servidores al pool sin interrumpir el servicio. El balanceador los tiene en cuenta automáticamente, aumentando la capacidad global del sistema. El proceso inverso también es posible: cuando baja el tráfico, se pueden desconectar algunos servidores para ahorrar recursos.

En infraestructuras cloud, este escalado suele ser automático: la plataforma añade o elimina instancias según el tráfico real.

El balanceador no solo trabaja con solicitudes HTTP: también puede gestionar conexiones TCP, UDP, peticiones a APIs, servicios internos y otros tipos de tráfico, dependiendo del nivel de la red en el que opere y la información disponible de cada solicitud.

Algoritmos de balanceo de carga: Round Robin, Least Connections y más

El balanceador de carga utiliza algoritmos para decidir a qué servidor enviar cada nueva solicitud. Del método elegido depende lo equilibrada que sea la infraestructura y cómo responde el sistema ante cargas no uniformes.

Round Robin

El algoritmo Round Robin es uno de los más sencillos. Envía las solicitudes a los servidores de manera secuencial: la primera al servidor A, la segunda al B, la tercera al C y así sucesivamente, reiniciando el ciclo.

Funciona bien si los servidores tienen capacidades similares y las solicitudes requieren recursos parecidos, ya que no necesita analizar el estado de cada conexión.

El problema surge cuando la complejidad de las solicitudes varía mucho. Un usuario puede recibir una página ligera en milisegundos y otro lanzar una operación pesada que tarda varios segundos. Formalmente, todos los servidores reciben el mismo número de solicitudes, pero la carga real puede ser muy desigual.

Least Connections

El algoritmo Least Connections selecciona el servidor con la menor cantidad de conexiones activas. En vez de alternar, evalúa cuáles están menos ocupados en ese momento.

Por ejemplo, si un servidor tiene 120 conexiones, otro 70 y otro 35, la nueva solicitud irá al tercero, que es el menos saturado.

Este método es útil en servicios donde las conexiones duran tiempos variables: algunas solicitudes se completan rápido y otras permanecen activas varios segundos o minutos. Así, se reparte la carga de forma más realista.

Aun así, el número de conexiones no siempre refleja la carga real. Un servidor puede tener diez tareas pesadas y estar más ocupado que otro con cien tareas simples. Por eso, en sistemas complejos, el balanceador puede considerar métricas adicionales.

Weighted Round Robin y Weighted Least Connections

Si los servidores tienen capacidades diferentes, se les pueden asignar pesos. Una máquina más potente recibirá más solicitudes, mientras que una menos potente recibirá menos.

Por ejemplo, un servidor con peso 2 puede recibir el doble de tráfico que uno con peso 1. Esto se denomina Weighted Round Robin si la distribución es secuencial, o Weighted Least Connections si también se tienen en cuenta las conexiones activas.

Esto es útil cuando conviven servidores de distintas generaciones o configuraciones en el mismo pool.

En algunos sistemas, la selección se basa en indicadores reales como el uso de CPU, memoria libre, tiempo de respuesta o solicitudes en cola. Aunque es más complejo, permite tomar decisiones basadas en el estado actual de la infraestructura.

No existe un algoritmo universal: para solicitudes cortas y similares basta Round Robin; para conexiones largas es mejor Least Connections; y para servidores heterogéneos, métodos ponderados.

L4 y L7: ¿en qué nivel opera el balanceador de carga?

Los balanceadores de carga se diferencian no solo por el algoritmo, sino también por la información que analizan. Normalmente se distinguen dos niveles principales según el modelo OSI: L4 y L7.

Balanceo L4 (Nivel de transporte)

Un balanceador L4 opera en el nivel de transporte, tomando decisiones basadas en direcciones IP, puertos y protocolos (por ejemplo, TCP o UDP). No analiza el contenido de la solicitud HTTP ni le interesa qué página desea abrir el usuario: ve la conexión como un flujo de paquetes de red que debe redirigir a un servidor disponible.

Este método requiere pocos recursos y permite manejar rápidamente grandes volúmenes de conexiones, por lo que es ideal cuando se necesita alta capacidad y mínima latencia. Por ejemplo, se pueden distribuir todas las conexiones a un puerto TCP entre varios servidores idénticos sin analizar el contenido.

Balanceo L7 (Nivel de aplicación)

Un balanceador L7 opera a nivel de aplicación y entiende protocolos como HTTP y HTTPS. Así puede tomar decisiones no solo por dirección o puerto, sino también por el contenido de la solicitud.

Por ejemplo, las peticiones a /api pueden ir a ciertos servidores de la aplicación y las de /images a otros especializados en archivos estáticos. De la misma forma, se puede distribuir el tráfico según el dominio, tipo de solicitud u otros parámetros HTTP.

Esta flexibilidad permite construir infraestructuras mucho más dinámicas y segmentadas, aunque el análisis del contenido requiere más recursos y complica la gestión.

En la práctica, la elección entre L4 y L7 depende de la necesidad: para distribuir conexiones rápido sin analizar contenido, es suficiente L4; si la ruta depende de parámetros del HTTP, se usa L7.

¿Cómo ayudan los balanceadores a soportar millones de solicitudes y fallos de servidores?

El principal beneficio del balanceador se nota cuando la carga supera la capacidad de un servidor. En vez de ampliar indefinidamente una sola máquina, el sistema se escala horizontalmente: se añaden nuevos servidores y el balanceador reparte las solicitudes entre ellos.

Si un servidor puede manejar unas 10.000 solicitudes por segundo, diez máquinas similares pueden gestionar un flujo mucho mayor. El balanceador actúa como coordinador, dirigiendo los usuarios a los nodos libres y disponibles. Por eso, grandes sitios y servicios online pueden atender millones de solicitudes sin depender de un único servidor sobrepotenciado.

Para profundizar en cómo la infraestructura se expande añadiendo nuevos nodos computacionales, consulta Escalabilidad de sistemas: claves para crecer sin límites.

El balanceador también es clave para la tolerancia a fallos. Si un servidor falla, los demás siguen funcionando. Las comprobaciones de estado detectan el nodo averiado y dejan de enviarle nuevas solicitudes. El usuario, en la mayoría de los casos, ni siquiera nota la ausencia temporal de parte de la infraestructura.

Sin embargo, el propio balanceador puede convertirse en un punto único de fallo. Si todo el tráfico pasa por una sola máquina y esta deja de funcionar, el resto de servidores quedará inaccesible aunque estén operativos. Por eso, en sistemas críticos se emplean varios balanceadores con redundancia o se distribuye su función entre varios nodos.

En grandes escalas, el balanceo puede realizarse en varios niveles: primero, el usuario se dirige al centro de datos o región adecuada; luego, un balanceador local selecciona el grupo de servidores; y dentro de este, la solicitud se reparte entre instancias individuales.

Esto está relacionado con el funcionamiento de las CDN (Redes de Distribución de Contenidos), que acercan el contenido al usuario y reducen la carga sobre la infraestructura central. Para saber más sobre este mecanismo, consulta ¿Qué es una CDN y cómo acelera la carga de tu sitio web?.

Así se construye un sistema multinivel de distribución de tráfico: el balanceo global dirige al usuario geográficamente, y los balanceadores locales deciden qué servidor procesa cada petición. Esto permite escalar la infraestructura según crece la audiencia y soportar la caída de servidores sin detener el servicio.

Conclusión

El balanceador de carga convierte un grupo de servidores en un sistema único capaz de atender grandes cantidades de usuarios. Recibe las conexiones entrantes, selecciona el servidor adecuado usando algoritmos específicos y excluye los nodos que dejan de responder.

Los esquemas simples utilizan Round Robin; los más dinámicos, Least Connections y algoritmos ponderados. A nivel L4, el balanceo se basa en conexiones de red; a nivel L7, permite analizar el contenido de las solicitudes y distribuir el tráfico según el tipo.

Cuando aumenta la carga, el sistema puede ampliarse añadiendo servidores sin cambiar la forma en que los usuarios se conectan. Es la combinación de balanceo, escalado horizontal y redundancia lo que permite a los grandes servicios soportar millones de solicitudes y seguir funcionando incluso si fallan algunas máquinas.

Etiquetas:

balanceador de carga
escalabilidad
algoritmos de balanceo
infraestructura TI
alta disponibilidad
servidores
cloud computing
CDN

Artículos Similares