为Session变量分配了多少内存?

时间:2011-11-07 16:29:54

标签: visual-studio-2010 session

我知道我可以将小值存储到Session

最近在我的Visual Studio ASP.NET应用程序中,我了解到我还可以存储更大的值,例如DataTable

这让我想知道Session可以存储多少存储空间。这取决于PC上的浏览器还是RAM?

1 个答案:

答案 0 :(得分:2)

ASP.NET会话存储在托管网站的网络服务器上。因此,限制将是您的网络服务器上有多少RAM,而不是客户端PC上的浏览器或RAM。因此,如果您的站点上有4个用户,并且每个用户有128MB的会话,那么您的Web服务器将拥有超过512MB的专用于ASP.NET的RAM。

我还会非常小心地在会话中存储很多东西。特别复杂的类型,如DataTable。这是因为每次访问该对象时都必须对其进行序列化/反序列化,这对您的Web服务器的CPU来说非常沉重。

我建议您阅读一些best practices for ASP.NET Session