【问题标题】:Too much memory usage of IIS application poolIIS应用程序池内存使用过多
【发布时间】:2013-03-07 21:02:27
【问题描述】:

我的 Windows Server 正在 IIS 7.5 上运行 Web 应用程序。

我想知道为什么 IIS 应用程序池使用大量内存。

请参考我从服务器截取的截图。


在名为 TEST 2.0(.NET Framework 2.0 版)的应用程序池中,只有一个小型 Web 服务。但是,虚拟字节大约需要 3GB。

此外,在名为 TEST 4.0(.NET Framework 4.0 版)的应用程序池中,只有一个 Web 服务什么都不做。但是,它为虚拟字节分配了大约 9GB。

你知道为什么 IIS 7.5 占用巨大的内存吗?有什么问题?

你有什么直观的想法吗?


为了给你更多的想法,这里是我的系统环境:

  • 操作系统:Windows Server 2008 R2 Standard SP1
  • 硬件:Intel(R) Xeon(R) CPU X5670 @ 2.93GHz 2.93GHz / 8.0GB RAM



【问题讨论】:

    标签: iis


    【解决方案1】:

    简答:没有错:)

    您实际上并没有使用 2GB 的 RAM。这只是该进程允许的地址空间。 Private Bytes 是 RAM 使用量的度量(因此,在这种情况下为 90MB)。

    来自虚拟字节的 PerfMon 定义:

    Virtual Bytes - Virtual Bytes 是进程正在使用的虚拟地址空间的当前大小(以字节为单位)。使用虚拟地址空间并不一定意味着相应使用磁盘或主内存页面。虚拟空间是有限的,进程可能会限制其加载库的能力。

    【讨论】:

    • 谢谢RB,但是你知道为什么每个应用程序池都会提前分配大量的Virtual Bytes吗?当您在我的屏幕截图中看到 TEST 2.0 和 TEST 4.0 应用程序池时,“TEST”后面的数字代表 .NET Framework 版本。如您所见,TEST 4.0 占用的空间是 TEST 2.0 的四倍。你能解释一下吗?
    • 目前的问题是IIS随机生成错误:Server Error in '/OECDStatWCF_OData' Application。内存门检查失败,因为可用内存(373817344 字节)小于总内存的 5%。因此,该服务将无法用于传入请求。要解决此问题,请减少机器上的负载或调整 serviceHostingEnvironment 配置元素上的 minFreeMemoryPercentageToActivateService 的值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2018-01-24
    • 1970-01-01
    相关资源
    最近更新 更多