Asp.net mvc 4 分布式ASP.NET MVC 4应用程序中状态管理的最佳实践

Asp.net mvc 4 分布式ASP.NET MVC 4应用程序中状态管理的最佳实践,asp.net-mvc-4,session-state,Asp.net Mvc 4,Session State,我正在使用ASP.NET MVC 4构建一个企业应用程序,遵循N层体系结构(包括具有负载平衡的web场和可能的应用场)。对于这种分布式体系结构,管理状态的最佳实践是什么 我知道我可以选择SQL状态管理,但考虑到性能(特别是考虑到许多服务器间调用),这是一个好的选择吗?如果我根本不想使用会话变量(由于性能问题或我不想处理会话超时),我还有哪些其他选择?使用@Html.Serialize()怎么样 如果以前有人问过类似的问题,我表示歉意,但我的搜索并没有得到任何明确的答案 编辑:以下是一些关键指标:

我正在使用ASP.NET MVC 4构建一个企业应用程序,遵循N层体系结构(包括具有负载平衡的web场和可能的应用场)。对于这种分布式体系结构,管理状态的最佳实践是什么

我知道我可以选择SQL状态管理,但考虑到性能(特别是考虑到许多服务器间调用),这是一个好的选择吗?如果我根本不想使用
会话
变量(由于性能问题或我不想处理会话超时),我还有哪些其他选择?使用
@Html.Serialize()
怎么样

如果以前有人问过类似的问题,我表示歉意,但我的搜索并没有得到任何明确的答案

编辑:以下是一些关键指标: 用户数量-120万 并发性-在高峰时间,事务高达每分钟800个 地理多样性——美国和欧洲 缓存-计划使用分布式缓存(AppFabric) 可用性-99.99%。
这是世界上最大的零售商之一的互联网网站,我们预计会有很高的增长率。

您预计会有多少用户、交易、高峰期、页面大小、服务器容量、分布式交易、地理多样性、缓存、备份、可用性、灾难恢复、并发用户、增长率等?我想你需要添加更多的细节来获得专门的帮助。如果没有这些指标/非功能性要求,您可能会得到相当笼统的答案。@Kane,请参阅编辑部分了解一些关键指标。我想最简单的方法是构建一个单页应用程序,并在中直接在浏览器中处理尽可能多的会话状态JS@zahorak,您是否有一个关于如何使用SPA在客户端处理会话状态的示例链接?您有cookie和本地存储,可以使用AngularJS或KnockoutJS等框架。这样就可以最大限度地减少需要会话状态的情况。在最好的情况下,您应该将其减少到0,因为客户端(浏览器)将不再是无状态的。