¿Qué es la persistencia de sesión?
La persistencia de sesión consiste en dirigir las solicitudes de un cliente al mismo servidor web o de aplicaciones de backend durante una «sesión» o durante el tiempo necesario para completar una tarea o transacción.
Los sitios web con mucho tráfico deben dar servicio a cientos de miles, si no millones, de usuarios de forma rápida y fiable. Las organizaciones de TI gestionan estos grandes volúmenes agrupando servidores en lo que suele denominarse una granja de servidores. Un balanceador de carga se sitúa delante del grupo de servidores y dirige el tráfico a cada servidor de forma que se maximice la eficiencia.
Si una usuaria navega por su sitio web durante cinco minutos, probablemente obtenga información de varios servidores backend. No acceder siempre al mismo servidor puede causar problemas si el navegador web o el servidor backend intentan mejorar la experiencia web almacenando información que permita agilizar la siguiente acción de la usuaria. En este caso, es importante —por no decir imprescindible— que todas las solicitudes de la usuaria se envíen al mismo servidor.
Para mejorar el rendimiento, un servidor backend puede almacenar en caché los datos solicitados por un usuario, así como precargar en la caché información adicional que considere que este podría solicitar. A menudo, lo que al usuario le parece una única solicitud, como la descarga de un documento de gran tamaño, en realidad se divide y se transmite entre el cliente y el servidor mediante varias transacciones de solicitud-respuesta. La forma más eficiente de que el usuario reciba la información solicitada es acceder al servidor que ya la tiene almacenada en caché.
En otros casos, un usuario puede realizar una transacción que requiera varios pasos, como rellenar un formulario, comprar un producto o actualizar su cuenta. A medida que el cliente y el servidor intercambian datos, deben almacenar información sobre el estado de la sesión (denominada contexto) para que la transacción se desarrolle sin problemas. En este caso, la persistencia de sesión facilita considerablemente que las transacciones se completen correctamente.
Un balanceador de carga o controlador de entrega de aplicaciones (ADC) se sitúa delante del grupo de servidores e implementa la lógica que vincula una sesión de usuario a un servidor específico durante el tiempo que sea necesario.
¿Cómo puede ayudar NGINX Plus?
NGINX Plus y NGINX son las mejores soluciones de balanceo de carga de su categoría, utilizadas por sitios web con mucho tráfico como Dropbox, Netflix y Zynga. Más de 350 millones de sitios web de todo el mundo confían en NGINX Plus y NGINX Open Source para ofrecer sus contenidos de forma rápida, fiable y segura.
Como balanceador de carga basado en software, NGINX Plus es considerablemente más económico que las soluciones de hardware con prestaciones similares. NGINX gestiona de forma nativa la persistencia de sesión de varias maneras, entre ellas mediante cookies y rutas persistentes.

