如何为ASP.NET网站分配内存?

时间:2010-08-24 14:06:36

标签: .net asp.net memory memory-management

我的网站使用了大量内存,我已经下载了ANTS Memory Profiler的试用版。该站点使用XML文件来存储类别和属于这些类别的项目 - 然后我遍历文件(4mb用于类别文件,大约800kb用于存储在本地机器(Web服务器)上的项目文件)和吐出在页面上的结果,我认为这是问题所在。问题是,当我点击我应该点击的东西时,我可以看到内存上升,但最终它达到了仅增长1或2mb的程度(同一请求使其上升约60mb)之前);所以它在最初加载文件后似乎稳定了。

这与我在实时网站上可以看到的内存使用量无关,因为内存将不断增加 - 我是唯一使用开发网站的人,而有数百人使用实时网站。 / p>

我的问题是,如果5个用户都在浏览同一个网站并且所有用户都执行不同的搜索或点击链接,那么为每个用户分配了一部分内存吗?

1 个答案:

答案 0 :(得分:1)

当然,webnoob有接受的答案,我会重新发表评论。 :)

请解释“网站使用XML文件存储导航和项目”的含义。它是怎么做到的?文件有多大?文件存储在哪里?在数据库中?如果你的内存在每次请求时上升了兆字节,那就是一个非常糟糕的信号。

因此,在每个页面请求时,您必须解析5 MB的xml?我讨厌打破它,但这种设计根本无法扩展。要回答您的问题,不会按用户分配内存。它是根据需要分配的。它听起来像每个页面请求,它必须加载5MB的XML到内存,这是令人望而却步的。您应该考虑使用数据库,只获取您在给定请求中特别需要的数据。