As soon as ASP.NET systems grow to the point that more than a single Web
server needs to be deployed, decisions need to be mode about where the
session state will be held. By default, ASP.NET session state lives in the
memory of the server hosting the application. The problem with this is that a
user who connects to one of our Web servers will not have the same session if
their next request is sent to another one of our Web servers, yet this is
exactly what we want to achieve to improve the robustness of our systems.
There are a number of hardware-based solutions that involve concepts like
"sticky sessions," where the hardware that performs the routing of requests
from users remembers which server the user last spoke to and directs all
requests from the same user to that... (more)