home ec2 east aws amazon-ec2 amazon-web-services elastic-beanstalk amazon-elb

amazon ec2 - ec2 - Adherencia de la sesión en Amazon Web Services



ec2 dashboard (2)

Si no lo habilito, ¿significa que podría desconectarme repentinamente porque el equilibrador de carga me llevó a otro servidor (no al servidor que me autenticó)?

Si habilito la permanencia de la sesión, ¿me desconecto cuando se apaga el servidor que me autenticó?

Cuando utilice Elastic Beanstalk con una aplicación web típica de Java, creo que definitivamente querrá habilitar la permanencia de la sesión. De lo contrario, cada solicitud HTTP desde el navegador de un usuario podría ser enrutada a un servidor diferente.

Para solucionar el problema de la destrucción de la sesión del usuario cuando el servidor al que están "atascados" para cerrarse, debe examinar la replicación de la sesión de Tomcat . Lamentablemente, esto no es algo que Elastic Beanstalk viene de fábrica, por lo que para poder configurar la replicación de la sesión, tendría que crear una AMI Elastic Beanstalk personalizada para que la use su aplicación. Además, tendría que usar una implementación de la replicación de sesión de Tomcat que no se base en la multidifusión , ya que la multidifusión no está disponible en AWS ni en ningún otro entorno de nube que yo sepa. Un ejemplo de una implementación que no depende de la multidifusión sería una que utilice una base de datos (como Amazon RDS) o un servidor memcached (como Amazon Elastic Cache) para que las sesiones estén disponibles en varias instancias de Tomcat.

También tenga en cuenta que la interfaz de usuario de Elastic Beanstalk solo le permite habilitar las cookies HTTP generadas por el equilibrador de carga. Sin embargo, después de que Elastic Beanstalk haya creado el equilibrador de carga, puede ingresar a la consola EC2 y modificar la configuración del equilibrador de carga para cambiarlo a cookies HTTP generadas por la aplicación, y luego indicarle que use la cookie "JSESSIONID".

Estoy un poco confundido sobre el uso de la adherencia de la sesión en los servicios web de Amazon. Cuando implemento mi aplicación web java con Amazon Elastic Beanstalk, puedo elegir habilitar la adherencia de la sesión y luego especificar un período de caducidad de la cookie.

Mi aplicación utiliza cookies para la sesión (JSESSIONID), así como para otras cosas pequeñas. La mayor parte del sitio web es accesible solo después de iniciar sesión (uso Spring Security para administrarlo). El sitio web se ejecutará en hasta 25 pequeñas instancias de EC2.

¿Debo habilitar la adherencia de sesión? Si no lo habilito, ¿significa que podría desconectarme repentinamente porque el equilibrador de carga me llevó a otro servidor (no al servidor que me autenticó)? Si habilito la permanencia de la sesión, ¿me desconecto cuando se apaga el servidor que me autenticó? Básicamente, ¿por qué y cuándo debo usar la adherencia de sesión?

Muchas gracias.