Skip to main content


Home Sticky session

Sticky session

(also session affinity)

Sticky session definition

A sticky session, also known as session affinity, refers to the practice of load balancing where user requests during a session are directed to the same server. This is often used when an application keeps track of a user's session's state, which is saved on a specific server.

See also: load balancer

Sticky session examples

  • Online shopping: If you add items to your shopping cart on an e-commerce website, a sticky session ensures you interact with the same server that holds your cart information throughout your visit.
  • Web-based applications: For instance, a document editing application that autosaves work in progress relies on sticky sessions to keep changes made by the user consistent across page reloads.

Pros and cons of sticky sessions

Pros

  • User experience: Maintains user data consistency, leading to a smoother user experience.
  • Efficiency: Can minimize reprocessing as data remains on a single server, saving on computational resources.

Cons

  • Scalability: The sticky session approach can pose issues with horizontal scaling. If one server fails, it may disrupt the user experience.
  • Load distribution: Sticky sessions may result in uneven load distribution if a particular user creates a higher workload.

Using sticky sessions

  • Use sticky sessions only when necessary, such as when session data can't be replicated across servers.
  • Implement session replication or centralized session storage as fail-safe methods to mitigate the risk of server failure.