When applications service a large number of simultaneous users, the developer needs to take this into account and find ways to ease the application’s bottlenecks.
One way to help speed up a stressed application is to load into memory resources that will be requested by multiple users. Reading from memory is much faster than reading from a hard drive or a database, so this can significantly speed up an application.
However, each computer contains a finite amount of memory, so there is a limit of how much data you can store there.
Microsoft Distributed Cache (code named "Velocity") attempts to address this problem. It allows your code to store data in an in-memory cache and it allows that cache to be stored on multiple servers, thus increasing the amount of memory available for storage.
Velocity even ships with a provider that allows you to store a web site's session state, making it possible to increase the amount of memory available to your session data.
Microsoft has not yet published a release date for Velocity, but it is available as a Community Technology Preview (CPT). You can download these bits and read more about it at http://code.msdn.microsoft.com/velocity.
The current CTP is not production ready - I had trouble keeping the service running on my Vista machine - but the technology shows enough promise that it is worth checking out. When the glitches are fixed, this will make .Net an even more appealing choice for developing enterprise applications.