Friday, January 28, 2011

How to keep sessions when moving from one application server to another

Assuming I follow the steps in this answer to deploy a new version of an application without downtimes. When I route the users to the new application server instance, the application will not remember their session so they will be logged out without warning.

Is there a way to keep the sessions alive over multiple servers or to make a "session snapshot" or similar?

In my case it's a Java application if that matters.

  • Store the session data on a separate server that both application servers have access to.

  • Store the session in Memcache, and allow both servers to have access to the memcache backend.

    You could store them on a shared disk, but that's slow and inefficient. Memcache is pretty much the right way to do this.

  • Look into clustering support for your server. Properly configured clustering will replicate your session data between the two servers.

    From BillThor

0 comments:

Post a Comment