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.

Ver cómo funciona en la práctica

Las definiciones solo te llevan hasta cierto punto. Una licencia temporal se ejecuta en tu propia máquina, contra tus propios documentos.