.NET MVC内存分析问题

时间:2011-08-11 14:00:57

标签: .net asp.net-mvc memory profiling ants

我正在研究ASP.NET MVC Web应用程序的内存使用情况。 对于我的研究,我在Virtualbox 4.1中使用Windows Server 2008 R2和IIS 6.1以及SQL Server 2008 R2。 我选择使用虚拟服务器,因为它不是在实时服务器上测试的选项。对于分析我正在使用ANTS Memory Profiler 7.0。 一开始我想知道为什么即使最简单的网站已经使用了大约30-40mb
作为一个例子,我使用的是“我的MVC应用程序”网站,这是Visual Studio中的教程网站,但同样的概念适用于我描述的所有网站。当我在空闲状态下运行网站中的蚂蚁分析器时,我得到以下摘要:

Generation 1: 26kb
Generation 2: 2100kb
Large object heap: 240kb
Unused memory allocated to .NET: 3265kb
Unmanaged: 20890kb

现在,我想知道非托管块中有哪些信息?有没有办法让我找出并可能减小这个街区的大小?

此外,还有7000个字符串对象,在空闲模式下内存总共约600k。所有这些字符串都来自哪里?我希望你能给我一些关于这些问题的信息。

1 个答案:

答案 0 :(得分:0)

如果您正在使用ANTS Memory Profiler 7,请使用Instance Categorizer,例如,字符串实例来雕刻它们并找出它们的来源。它在这样的情况下特别有用,在这种情况下,你有成千上万的实例,并且你想要找出它们的来源。字符串经常需要这种分析。