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.

link|improve this question

80% accept rate
feedback

3 Answers

up vote 1 down vote accepted

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

link|improve this answer
feedback

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.

link|improve this answer
feedback

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

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.