Cuando un usuario inicia sesión en un sistema informático en Internet, es posible que esté utilizando tecnología de afinidad de servidor subyacente. Esta es una técnica en la que un usuario individual está vinculado a un servidor informático específico en Internet. Esta correlación uno a uno suele ser necesaria para las aplicaciones informáticas que almacenan información crítica sobre un individuo. Algunos ejemplos incluyen sistemas de pago de facturas en línea, servicios bancarios y minoristas.
La afinidad del servidor es una técnica informática en la que la información del cliente se guarda temporalmente en un dispositivo informático para permitir la finalización de las transacciones de ventas en línea. Esto se usa con mayor frecuencia en programas de ventas minoristas. Asegura que una transacción permanecerá intacta en el servidor hasta que se complete la compra.
La mayoría de las aplicaciones informáticas grandes se distribuyen en muchos grupos de servidores. Este proceso distribuido requiere una forma de afinidad con el servidor para garantizar que la actividad de la sesión del usuario esté disponible para cada solicitud. Un equilibrador de carga generalmente administra este proceso de manera similar a un policía de tráfico automatizado. A medida que se interpreta cada solicitud posterior, el equilibrador de carga determina qué servidor debe administrar el proceso.
Hay muchas formas de hacer que funcione la afinidad con el servidor. Una de las técnicas más utilizadas se conoce como gestión de sesiones pegajosas. Este es un proceso en el que la información de la sesión del usuario se almacena en la memoria local del servidor que inició la transacción inicial. Esta información también se guarda en la computadora local para cada solicitud adicional como una cookie. Si el usuario realiza solicitudes adicionales, se lo dirige automáticamente al servidor que inició la transacción.
La afinidad del servidor impone algunas limitaciones a una aplicación informática. Esta técnica generalmente afecta el rendimiento, la flexibilidad y la confiabilidad. Cuando un programa utiliza este enfoque, obliga a que las solicitudes se dirijan a servidores específicos del clúster. Si estos servidores se sobrecargan o no están disponibles, el usuario normalmente recibirá un mensaje de error de que el sitio web de Internet no funciona, aunque haya otros servidores disponibles.
Cuando un sistema informático distribuido tiene un verdadero equilibrio de carga, cada solicitud se enruta a un servidor diferente. Este enfoque de equilibrio de carga disminuye cuando se aplican técnicas de afinidad de servidor. El equilibrador de carga se ve obligado a enviar solicitudes a máquinas específicas, lo que puede hacer que una caja se sobrecargue con solicitudes.
Es importante considerar otras opciones antes de implementar soluciones de afinidad de servidor. Por lo general, esto limita el rendimiento y la escalabilidad de una aplicación basada en Internet, lo que afecta directamente el uso de la aplicación. Algunas mejores opciones incluyen técnicas de almacenamiento de memoria local y almacenamiento de bases de datos que permiten solicitudes sin estado a la aplicación.