在 Web 场上托管的 ASP.NET MVC 应用程序中维护用户会话状态的最佳方法是什么?
Out 应用程序当前使用 IIS 6.0 上的标准 ASP.NET 会话,但我们希望将应用程序移动到网络场环境。我已经读到我们可以为我们的应用程序使用 SQL Server 会话状态,但我只想知道是否有人在使用其他东西以及为什么!
在 Web 场上托管的 ASP.NET MVC 应用程序中维护用户会话状态的最佳方法是什么?
Out 应用程序当前使用 IIS 6.0 上的标准 ASP.NET 会话,但我们希望将应用程序移动到网络场环境。我已经读到我们可以为我们的应用程序使用 SQL Server 会话状态,但我只想知道是否有人在使用其他东西以及为什么!
一种方法是使用 Velocity 分布式缓存。
在 SQL 中存储会话在 MVC 中仍然有效(就像在 WebForms 中一样):
http://support.microsoft.com/kb/317604
我们在 MVC 应用程序的几个盒子中成功地使用了它,并且在旧 WebForms 应用程序的很多盒子中使用了它。
您可以尝试将会话存储在 memcache 中。应该既快速又可扩展。虽然它确实需要一些内存。
正如在 StackOverflow 播客之一中所讨论的那样:通常会话状态非常小——这里和那里有几个键——并且可以很好地将其简单地存储在中央数据库中。