asp.net-mvc - 如何准确确定 ASP.NET 应用程序的应用程序池内存使用情况

标签 asp.net-mvc performance iis-7 application-pool

我的托管公司对应用程序池 (IIS 7.5) 施加了 100mb 的内存限制。

如何准确确定 ASP.NET 应用程序的内存使用情况?

为了创建某种基线,我创建了一个带有单个 Controller 操作的空 ASP.NET MVC 3 应用程序,返回一个字符串结果。

使用 ANTS 分析这个应用程序有以下结果:

Generation 1 - 286.2KB
Generation 2 - 795.4KB
Large Object Heap - 75.63KB
Unused memory allocated to .NET - 1.323MB
Unmanaged - 26.78MB

我担心的是,如果应用程序池限制是基于专用字节,那么一个空白的 ASP.NET MVC 应用程序将使用 33MB 的池资源。因此,我的 MVC 应用程序实际做某事(使用 93MB)很容易超过“限制”。

但是,如果我调用 GC.GetTotalMemory,则结果为 8MB,这听起来更容易接受。

我完全没有成功找到任何基准进行测试,但如果一个空的 MVC 网络应用程序确实使用了 33MB 的资源(这听起来确实过多),那么我的主机施加的限制似乎完全不现实。

非常感谢, 本

最佳答案

  1. 与您的托管服务提供商交谈,了解该内存限制是针对私有(private)内存还是虚拟内存。
  2. 了解私有(private)内存和虚拟内存,然后使用 ANTS 分析器更好地了解应用程序的内存占用情况。

关于asp.net-mvc - 如何准确确定 ASP.NET 应用程序的应用程序池内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5051374/

相关文章:

php - 拖放保存到 mysql 优化

c++ - 如何加速 R 代码在特定方向上移动矩阵元素 - Rccp?

ssl - IIS7 - 双向 SSL - 403.7

jquery - 下载 jquery.numeric.js 文件

r - 在巨大的数据表中计算 NA

c# - ASP.NET/IIS 7 - 使用主体对 Active Directory 进行身份验证

wcf - 在不更改站点绑定(bind)的情况下更改 WCF Web 服务的公开端点 URL

asp.net - ASP.NET MVC 路由和经典的 ASP 主页(VBScript,不是 Web 表单)可以很好地协同工作吗?

html - 安全的 Web 文本格式

.net - Linq to SQL 或企业 ASP.NET MVC 应用程序架构的 Entity Framework ?