I have multiple frontend servers churning out the HTML pages , behind a load balancer.
Just wondering what is the best practice to update the frontend app while users are surfing the site.
- ensure each user see either the new or old version, but not flip between both.
- ensure load is still evenly distributed amongst servers that are not being updated.
- no disruption to service.
- Divide the servers into groups.
- Take out a group from load balancing and wait for it to finish off current requests.
- Update the app and OS, etc.
- put the group back to load balancing.
- Pick another group and repeat steps 2-5.
While in process, some servers will have the new version, so to ensure users do not flip between the old and new ones, do I enable sticky session?