Elastic Load Balancing: El Anfitrión que Organiza el Tráfico en AWS
Descubre cómo Elastic Load Balancing (ELB) actúa como el anfitrión perfecto de tu aplicación en AWS, distribuyendo el tráfico de manera inteligente entre tus instancias EC2 para evitar cuellos de botella y garantizar un rendimiento óptimo

El Problema del Éxito: Cuando Todos Quieren el Mismo Carril
Imagina una avenida principal con tres carriles disponibles. Ya resolviste el problema de la capacidad con Auto Scaling (puedes abrir más carriles cuando hay mucho tráfico), pero ahora enfrentas otro desafío: todos los vehículos se amontonan en el carril izquierdo mientras los otros dos carriles están prácticamente vacíos.
Esto es exactamente lo que pasa en AWS cuando tienes múltiples instancias EC2 funcionando pero el tráfico no se distribuye equitativamente. Algunas instancias están sobrecargadas mientras otras están prácticamente de vacaciones. Spoiler: las instancias no cobran extra por estar sobrecargadas, pero tu aplicación sí sufre las consecuencias.
La Solución: Un Oficial de Tránsito Inteligente
La solución es simple: necesitas un oficial de tránsito en el cruce que dirija a los vehículos hacia el carril con menos congestión. En AWS, ese "oficial" se llama Elastic Load Balancing (ELB), y es básicamente el director de tráfico más eficiente que jamás tendrás.
Si alguna vez has pasado por un cruce donde hay un oficial dirigiendo el flujo vehicular hacia diferentes rutas para evitar embotellamientos, ya entiendes perfectamente cómo funciona un load balancer. Es ese profesional que está parado ahí, observando todos los carriles y señalando "siga por la derecha" o "tome el carril central".
¿Qué es Elastic Load Balancing?
ELB es un servicio administrado de AWS que distribuye automáticamente el tráfico de red entrante entre múltiples recursos, como instancias EC2, contenedores o direcciones IP. La palabra "elastic" no está ahí por casualidad: significa que puede escalar hacia arriba o hacia abajo según el tráfico, sin que tengas que pagar costos adicionales por hora.
Piensa en ELB como ese oficial de tránsito que:
- Observa constantemente cuántos vehículos hay en cada carril
- Dirige a los nuevos conductores hacia los carriles con menos congestión
- Si un carril está bloqueado, automáticamente redirige el tráfico a otras rutas disponibles
- Nunca se toma un descanso ni necesita vacaciones (a diferencia de los oficiales humanos)
El Problema que Resuelve ELB
Imagina que tienes una aplicación web donde los usuarios pueden realizar pedidos en línea. Esta aplicación tiene diferentes capas: la capa de pedidos (frontend), la capa de procesamiento (donde se procesan las transacciones), la capa de almacenamiento (base de datos), etc.
Sin un load balancer, cada instancia del frontend necesita conocer la dirección de cada instancia del backend. Es como si cada conductor tuviera que memorizar qué carriles están disponibles en cada momento y cuál es la mejor ruta. Con 6 instancias, ya es complicado. Ahora imagina cientos o miles de instancias. Sí, exactamente: una pesadilla logística.
Cómo ELB Simplifica Todo
Con ELB, el frontend solo necesita conocer una URL: la del load balancer. Es parecido a tener un único punto de entrada a una autopista con múltiples carriles. Los conductores entran por ese punto, y el sistema automáticamente los distribuye hacia el carril más conveniente. Nadie necesita saber cuántos carriles hay, cuáles están disponibles, o cuál tiene menos tráfico.
Cuando una nueva instancia backend está lista para trabajar, simplemente le avisa al ELB: "Hey, ya estoy lista, mándame tráfico". Y el ELB comienza a enviarle solicitudes. El frontend ni se entera de que hay una nueva instancia. Todo sucede automáticamente entre bastidores.
Ventajas de Usar ELB vs Otras Soluciones
Podrías instalar tu propio load balancer en EC2 (existen muchas opciones en el mercado), pero entonces tú serías responsable de:
- Administrarlo y configurarlo
- Aplicar parches de seguridad
- Realizar actualizaciones
- Manejar la conmutación por error (failover)
- Hacer mantenimiento regular
Es como decidir entrenar y colocar tus propios oficiales de tránsito en cada cruce en lugar de tener un sistema automatizado de semáforos inteligentes. Claro, puedes hacerlo, pero ¿realmente quieres dedicar tu tiempo a eso cuando hay opciones que simplemente funcionan?
Con ELB, AWS maneja toda esa complejidad. Tú lo configuras una vez y AWS se encarga del resto. Básicamente, es el empleado perfecto que nunca se enferma, nunca comete errores y trabaja 24/7 sin quejarse.
Características Principales de ELB
Es Regional
ELB opera a nivel regional, lo que significa que puede distribuir tráfico entre instancias en múltiples zonas de disponibilidad dentro de una región. Imagina que tienes varias rutas alternativas que conectan diferentes zonas de la ciudad, y un sistema centralizado de control de tráfico que dirige a los conductores hacia la ruta con menos congestión en ese momento.
Gestiona Tráfico Interno y Externo
ELB puede manejar tanto el tráfico que viene de internet (vehículos que entran desde fuera de la ciudad) como el tráfico entre diferentes componentes de tu aplicación dentro de AWS (circulación interna entre distritos). Es decir, no solo dirige a los conductores que entran por las principales autopistas, sino también organiza el flujo vehicular entre diferentes áreas de tu infraestructura.
Estrategias de Enrutamiento Inteligentes
ELB no solo envía tráfico al azar. Utiliza diferentes estrategias para asegurarse de que el tráfico se distribuya de manera eficiente:
- Round Robin: Envía cada vehículo al siguiente carril en la lista, rotando continuamente
- Least Outstanding Requests: Envía tráfico al carril con menos vehículos esperando
- Sticky Sessions: Mantiene a un conductor en el mismo carril durante su recorrido
Ejemplo Práctico: Arquitectura Desacoplada
Antes de ELB, tu arquitectura se veía así: cada conductor del frontend conocía directamente todos los carriles disponibles del backend. Si el backend abría 10 carriles nuevos, todos los conductores del frontend necesitaban actualizarse para conocer estas nuevas rutas. Un verdadero dolor de cabeza.
Con ELB, la arquitectura se desacopla completamente. Los conductores del frontend solo conocen el punto de entrada al load balancer. El backend puede abrir de 5 a 500 carriles, y el frontend ni se entera. Cada capa puede escalar independientemente según sus propias necesidades.
Es como si tu sistema de navegación solo necesitara conocer la entrada principal a la autopista, sin importar cuántos carriles hay disponibles en ese momento. La autopista puede abrir o cerrar carriles según la demanda, y tu sistema de navegación sigue funcionando exactamente igual.
El Resultado: Arquitectura Escalable y Resiliente
Con ELB implementado, tu aplicación puede:
- Manejar picos de tráfico sin congestionarse
- Escalar automáticamente sin intervención manual
- Mantener alta disponibilidad aunque fallen carriles individuales
- Distribuir carga de manera eficiente entre recursos
- Simplificar drásticamente la complejidad de tu arquitectura
Todo esto sin que tengas que gestionar la infraestructura subyacente. Porque seamos honestos: ya tienes suficiente de qué preocuparte sin tener que convertirte también en experto en control de tráfico vial.
Conclusión
Elastic Load Balancing es ese componente invisible pero crucial que mantiene tus aplicaciones funcionando suavemente, distribuyendo tráfico de manera inteligente y permitiendo que tu arquitectura escale sin dolores de cabeza. Es el oficial de tránsito perfecto que nunca descansa, nunca se equivoca al dirigir a los conductores, y siempre sabe exactamente dónde hay espacio disponible.
Combinado con Auto Scaling, ELB completa el dúo dinámico que permite que tus aplicaciones en AWS sean verdaderamente elásticas, escalables y resilientes. Porque en la nube, no se trata solo de tener capacidad suficiente, sino de distribuir esa capacidad de manera inteligente.

Jesus Eusse
Ingeniero apasionado por la tecnología y desarrollo personal
Comparte este artículo