El equilibrio de carga óptimo puede ser muy costoso y complicado. El equilibrio de carga básico solo debe garantizar que cada servidor atienda aproximadamente el mismo número de visitas en cualquier momento.
El método más simple de equilibrio de carga es proporcionar múltiples registros A en DNS. Por defecto, la dirección IP se configurará en un método round robin. Esto dará como resultado que los usuarios se distribuyan de manera relativamente uniforme entre los servidores. Esto funciona bien para sitios apátridas. Se requiere un método un poco más complejo cuando tiene un sitio con estado.
Para manejar requisitos con estado, puede usar redireccionamientos. Proporcione a cada servidor web una dirección alternativa como www1, www2, www3, etc. Redireccione la conexión www inicial a la dirección alternativa del host. Puede terminar con problemas de marcadores de esta manera, pero deberían estar distribuidos de manera uniforme en los servidores.
Alternativamente, el uso de una ruta diferente para indicar qué servidor está manejando la sesión con estado permitiría sesiones proxy que hayan cambiado el host al servidor original. Esto puede ser un problema cuando la sesión para un servidor fallido llega al servidor que se ha hecho cargo del servidor fallido. Sin embargo, salvo el software de agrupación, el estado se perderá de todos modos. Debido al almacenamiento en caché del navegador, es posible que no experimente muchas sesiones cambiando servidores.
La conmutación por error se puede manejar configurando el servidor para que se haga cargo de la dirección IP de un servidor fallido. Esto minimizará el tiempo de inactividad si falla un servidor. Sin el software de agrupamiento, las sesiones con estado se perderán si falla un servidor.
Sin la conmutación por error, los usuarios experimentarán un retraso hasta que su navegador falle a la siguiente dirección IP.
El uso de servicios Restful en lugar de sesiones con estado debería eliminar los problemas de agrupación en el front-end. Los problemas de agrupación en el lado del almacenamiento aún se aplicarían.
Incluso con equilibradores de carga frente a los servidores, es probable que tenga DNS round-robin frente a ellos. Esto asegurará que todos sus equilibradores de carga se utilicen. Agregarán otra capa a su diseño, con complejidad adicional y otro punto de falla. Sin embargo, pueden proporcionar algunas características de seguridad.
La mejor solución dependerá de los requisitos relevantes.
La implementación de servidores de imágenes para servir contenido como imágenes, archivos CSS y otro contenido estático puede facilitar la carga en los servidores de aplicaciones.