No, I realize I can't have instant reloads - I just want instant zero fuzz fully automatic deploys. I realize current sessions need to stay with old version until timing out. Sorry if being unclear.
What I need is the following:
I want to be able to have one click deploys of new versions of my fully stateful lift webapps from say jenkins. Of course, since they are lift apps with state, I simply cannot remove the old version without messing up the experience for my users. So I need "drain mode". This seemed easier to setup in haproxy than in nginx (without premium) - that was the main reason for me switching.
haproxy seems to have the notion of drain mode in it's stickyness. So I can say: do round robin over my old version and new version of the app, but be sticky on this here session cookie but also put the old version in drain mode meaning no new sessions will go there. And when no sessions are left on the old version I can take it down. Rinse and repeat.
However, there are a lot of questions for me to fully automate this from a jenkins build.
Sorry if my original question was unclear. Reason I asked for help here is I know:
1) We're all in the need for sticky sessions because lift.
2) Many people here have "full stack" knowledge and should have had to deal with similar issues.
Anyways, I'm working on it and I'll report back if/when I'm successful :)
Cheers,
Viktor