Recently while migrating a complex Japanese API to AWS, I had to investigate an empty session issue that forced me to  review my software engineering notes on HTTP Sessions before moving forward with the implementation of a sticky session in APP ELB.
While AWS allows you to activate session stickiness with a single click of your mouse (of course you need to have a good AWS knowledge to know where to click 😊), It is always a good practice to first understand  why  you  need to enable a  particular feature of the application load balancer. Thus, before going through the required steps for the sticky session configuration in AWS, we will first review the concept of sticky session .

What is a sticky session?

Session stickiness, a.k.a., session persistence refers to the feature of many commercial load balancing solutions for web-farms to route the requests for a session to the same physical machine that serviced the first request for that session. This is mainly used to ensure that a in-proc session is not lost as a result of requests for a session being routed to different servers. Since requests for a user are always routed to the same machine that first served the request for that session, sticky sessions can cause uneven load distribution across servers.

This can prove very helpful, as HTTP/S is a stateless protocol by design because each request is executed independently, without any knowledge of the requests that were executed before it, which means once the transaction ends the connection between the browser and the server is also lost. And since most of the times web applications do have the need to serve personalized user data (e.g., keep logs of items in a shopping cart or chat conversations) over the course of a session.

Without session persistence, the web application would have to maintain this information across multiple servers, which can prove inefficient—especially for large networks.

Now  that you have an idea on the concept of  sticky session , follow the below steps for a sticky session configuration in AWS Application load balancer