1

Could you please help me to find a solution - how to move all session specific data from one version of app to another on the fly?

Suppose you have a long run Spring application. It can launch jobs that will be executed in hours. You wrapped your app/environment inside Docker and deploy it to client's VPC. You have upgrade procedure, as described below.

I know how to grab all users sessions. The question is how to exchange that data between two docker containers? Any pitfalls? Or serialization/deserialization to common file system is good enough?

Upgrade procedure:

  1. Deploy new version of Docker's image to client's VPC
  2. Run new version off app on client's cluster. Keep old version of the app running till it has uncompleted jobs.
  3. Move all session specific data to the new version of app How to do that?
  4. Start redirecting all new requests to the new version of application
  5. Shut down old version as it completes all tasks

*Is that ok to *

Community
  • 1
  • 1
VB_
  • 45,112
  • 42
  • 145
  • 293

1 Answers1

0

I would suggest to use a clustered session with Spring Session. It gives you almost transparent support for clustering and you don't have to do manually anything.

Community
  • 1
  • 1