Despliegue de granja web
Definición
Ejecutar una aplicación en varios servidores detrás de un equilibrador de carga, de modo que solicitudes consecutivas del mismo usuario pueden ser atendidas por diferentes máquinas.
Las granjas web rompen cualquier cosa que asuma que una solicitud llega al mismo lugar que la anterior. Los visores de documentos están inusualmente expuestos a esto, porque al abrir un documento se crea un estado del lado del servidor — las páginas renderizadas — que las solicitudes posteriores esperan encontrar.
La solución ingenua son las sesiones pegajosas, asignando un usuario a un nodo. Funciona hasta que ese nodo se vacía para el despliegue, momento en el que todos los documentos abiertos en curso fallan de una vez.
La solución duradera es una caché de renderizado compartida. Cualquier nodo puede servir una página para una sesión que otro nodo abrió, por lo que los nodos se vuelven intercambiables y los despliegues continuos dejan de ser un evento.
En Doconut
La granja web y el despliegue distribuido son compatibles mediante una caché de renderizado compartida, de modo que una sesión abierta en un nodo sigue siendo legible desde otro. Las imágenes de página en caché son copias derivadas de documentos sensibles — establezca una política de expulsión de la caché que coincida con sus reglas de retención.
Términos relacionados
Token de sesión opaco
Un identificador que no tiene significado para quien lo posee — hace referencia al estado del servidor en lugar de describirlo, por lo que un cliente no puede leerlo, modificarlo o adivinar un valor vecino.
Renderizado de documento del lado del servidor
Convertir un documento en imágenes de página en el servidor, de modo que el navegador muestre páginas renderizadas en lugar de analizar el archivo original.
Despliegue sin conexión
Ejecutar software en un entorno sin ruta de red a internet, de modo que cada dependencia que necesita ya debe estar dentro del límite.