¿Por qué mantener stateless los servidores de aplicación?
Opciones
- Para ahorrar disco en cada servidor de aplicación
- Cualquier instancia puede servir cualquier petición (escalado fácil) (Opción correcta)
- Los servidores stateless son más rápidos con trabajo intensivo en CPU
- Para evitar usar una base de datos en todo el sistema
Respuesta
Cualquier instancia puede gestionar cualquier petición, lo que permite autoscaling y failover fácil; el estado de sesión vive en un almacén compartido o en un token
Por qué
Si un servidor guarda datos del usuario en su propia memoria (como una sesión de login), ese usuario debe ir siempre al mismo servidor, y si se reinicia, los datos se pierden.
Los servidores stateless no guardan nada entre peticiones: las sesiones van a Redis o a un token firmado, los archivos a object storage (S3).
Así cualquier servidor puede gestionar cualquier petición, y puedes añadir o quitar servidores libremente.
Recuerda
Saca el estado de los servidores de aplicación.