我有一个 IIS7 网站,现在正在运行。如果我观察远程服务器的内存使用情况,它通常约为 300-400mb,但有时它会在 5-10 秒内随机增加到 10gb。我曾尝试通过在更短的时间内从服务器 iislog 发送相同的请求来在我的本地主机中复制此错误,但我无法复制它。我检查了我的代码中是否存在未处置的对象等,我的代码似乎是安全的。
我尝试在 IIS6、fw2 上提供此网站,结果始终相同。我在服务器上安装了 .NET 内存分析器,并在发生泄漏时拍摄了快照,它在未引用对象部分列出了大量内存。我如何查看原因?
答案1
您可以使用 IIS 调试诊断工具:http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=24370
此外,在 IIS 中,您可能希望查看应用程序池的属性。具体来说,尝试修改回收间隔或手动回收。
当用户尝试上传时,您是否增加了内存?