The more I delve into distributed architectures, the more I’m feeling like Microsoft just isn’t providing much of a path forward to scalable distributed systems. Case in point: state management.
By default, session state in ASP.NET is stored in the web server’s memory. To share state across servers – which you would want to do in a server farm – you need to store it in SQL Server or in the .NET state service. This is fine for small solutions, but once you bump up against the need to partition state across many servers or multiple hosting locations, things start to get complex and expensive.
Using JavaSpaces from .NET
3rd Parties: ScaleOut, NCache, GigaSpaces