kis*_*ore 21 iis iis-7 iis-6 virtual-memory memory-leak
IIS 工作进程占用了我们服务器上的大量内存。我想限制每个应用程序可以使用的内存。我很困惑是否应该设置虚拟内存限制或私有内存限制。我们 IIS 中的每个应用程序都位于自己的应用程序池中。
如果我将私有内存限制设置为 500MB,将虚拟内存限制设置为 3GB。应用程序池什么时候回收?达到 500MB 或达到 3GB 后是否回收。
Dom*_*c D 23
IIS 将尊重这两个限制。
如果您设置了 500MB 的专用字节限制,那么只要一个工作进程尝试提交 501MB,IIS 就会启动一个新的工作进程并杀死旧的。
如果您设置了 3GB 的虚拟内存限制,一旦工作进程尝试保留 3.001GB,IIS 将启动一个新的工作进程并杀死旧的。
如果您使用的是 64 位平台,您应该知道 ASP.NET 应用程序会主动保留虚拟内存。例如,我在农场上有一个应用程序,它只使用 88MB 的私有字节,但它现在的虚拟大小为 5.4GB。我相信虚拟内存预留是服务器上物理 RAM 的函数。了解在 64 位平台上保留大部分虚拟内存对性能的影响为零也很重要。
基本上,如果您在 IIS 服务器上遇到内存消耗问题,您要限制的设置是 Private Memory/Bytes,这与实际内存使用量相对应。
| 归档时间: |
|
| 查看次数: |
79268 次 |
| 最近记录: |