c# - 调试IIS随机疯狂内存使用情况

标签 c# asp.net .net iis azure

我有一个作为 Windows Azure 云服务托管的 ASP.NET MVC 5 网站。 大多数时候,网站运行得非常顺利(我使用 Azure 缓存在实异常(exception)部缓存内容)。但有时网站会变得完全疯狂,耗尽所有内存。我尝试重新启动IIS,甚至重新启动实例,内存保持满(w3wp.exe吃掉所有东西),很多硬故障等。它持续了大约30分钟或1小时,其中页面显示非常慢(甚至超时),然后“自行”恢复正常。 我无法在我的开发机器上重现这一点。我尝试了内存分析(在 VS2013 中分析>性能和诊断),但无法找到任何疯狂的东西。 即使 New Relic 也没有透露任何信息。

问题是:有没有办法通过执行诸如恒定内存分析之类的操作来直接“在生产中”调试此类问题?我可以使用远程桌面访问该实例。

注意:如果对性能有影响,也没什么大不了的,这是一次性的事情,没有什么比每天 4-5 次 1 小时不可用更糟糕的了......

最佳答案

如果您可以 RDP 盒子,那么您可能需要安装以下其中一项:

分析工具:

APM:

  • New Relic (他们有为期两周的 PRO 试用)

关于c# - 调试IIS随机疯狂内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20604386/

相关文章:

c# - Unity3d:CommandInvokationFailure:Gradle构建失败

c# - DataTable 到 Dictionary<String,StringBuilder> 的转换

c# - 如何使用 Redis 支持的 ServiceStack ICacheClient 存储和检索枚举值

c# - Ngen 可以用于代码安全吗?

c# - 是否有 ClaimTypes 属性来表示 "city"?

c# - Doxygen:不支持部分类?

javascript - 在 Xamarin.Forms IOS WebViewRenderer 中调用 JavaScript 函数

asp.net - View 中对象或输出的缓存 : Which is better?

c# - 如何将 DropDownList 与列表的选择结果绑定(bind)

asp.net - 无法从程序集 'Elmah.ErrorLogModule' 加载类型 'Elmah'