Quiero saber la diferencia entre sesiones pegajosas y no pegajosas. Lo que entendí después de leer en internet:
Adhesivo : solo habrá un único objeto de sesión allí.
Sesión no fija : objeto de sesión para cada nodo del servidor
Quiero saber la diferencia entre sesiones pegajosas y no pegajosas. Lo que entendí después de leer en internet:
Adhesivo : solo habrá un único objeto de sesión allí.
Sesión no fija : objeto de sesión para cada nodo del servidor
Respuestas:
Cuando su sitio web es atendido por un solo servidor web, para cada par cliente-servidor, se crea un objeto de sesión y permanece en la memoria del servidor web. Todas las solicitudes del cliente van a este servidor web y actualizan este objeto de sesión. Si algunos datos deben almacenarse en el objeto de sesión durante el período de interacción, se almacenan en este objeto de sesión y permanecen allí mientras exista la sesión.
Sin embargo, si su sitio web es atendido por varios servidores web que se encuentran detrás de un equilibrador de carga, el equilibrador de carga decide a qué servidor web (físico) real debe ir cada solicitud. Por ejemplo, si hay 3 servidores web A, B y C detrás del equilibrador de carga, es posible que www.mywebsite.com/index.jsp se sirva desde el servidor A, www.mywebsite.com/login.jsp se sirva desde el servidor B y www.mywebsite.com/accoutdetails.php se sirven desde el servidor C.
Ahora, si las solicitudes se atienden desde (físicamente) 3 servidores diferentes, cada servidor ha creado un objeto de sesión para usted y debido a que estos objetos de sesión se encuentran en tres cuadros independientes, no hay forma directa de que uno sepa qué hay en el objeto de sesión del otro. Para sincronizar entre estas sesiones del servidor, puede que tenga que escribir / leer los datos de la sesión en una capa que sea común a todos, como una base de datos. Ahora escribir y leer datos a / desde una base de datos para este caso de uso puede no ser una buena idea. Ahora, aquí viene el papel de la sesión fija .
Si se le indica al equilibrador de carga que use sesiones fijas, todas sus interacciones sucederán con el mismo servidor físico, aunque haya otros servidores presentes. Por lo tanto, su objeto de sesión será el mismo durante toda su interacción con este sitio web.
En resumen, en el caso de las Sesiones permanentes, todas sus solicitudes se dirigirán al mismo servidor web físico, mientras que en el caso de un equilibrador de carga no fijo, puede elegir cualquier servidor web para atender sus solicitudes.
Como ejemplo, puede leer sobre Elastic Load Balancer de Amazon y las sesiones adhesivas aquí: http://aws.typepad.com/aws/2010/04/new-elastic-load-balancing-feature-sticky-sessions.html
He respondido con más detalles aquí: https://stackoverflow.com/a/11045462/592477
O puedes leerlo allí ==>
Cuando utiliza el equilibrio de carga, significa que tiene varias instancias de tomcat y necesita dividir las cargas.