【问题标题】:Unexplained Azure webapp memory consumption无法解释的 Azure webapp 内存消耗
【发布时间】:2021-08-17 03:15:20
【问题描述】:

我正在调试我们的一个 Azure Web 应用程序上无法解释的内存消耗。我花了很多时间挖掘日志、使用 dotmemory、perfview、诊断工具的内存转储,但仍然无法弄清楚为什么我们的应用程序内存在一天中稳定增长。

我下载的内存转储之一约为 900 MB,但 dotmemory 显示最大尺寸对象仅 26 MB

我还使用 VS 诊断工具执行了无数次诊断会话,并检查应用程序是否在每个请求结束时释放资源

以下是一天开始和结束时的私有字节消耗

我在堆中进行了多次验证,以确保在请求之前和之后释放应用程序对象/模块,并且上面的屏幕截图显示确实如此。

如果你能分享任何关于如何找到消耗内存的指针,我会的

【问题讨论】:

    标签: asp.net-web-api memory-management memory-leaks azure-web-app-service out-of-memory


    【解决方案1】:

    谢谢SnehaAgrawal-MSFT。发布您的建议作为帮助社区成员的答案。

    您可以为特定应用启用 Application Insights。如果您尚未启用,请按照以下步骤操作。

    转到 Web 应用 -> 监控 -> Application Insights -> 启用

    如果“Application Insights”已启用​​,您可以在“Metrics”选项卡下找到详细信息。这将使您详细了解服务器端和客户端发生的情况。

    更多详情请参考Monitor Azure web app performanceAzure App Service Memory Usage. Where to see full breakdown?How to identify the cause of 90% CPU percentages of app service plan in azure

    【讨论】:

      【解决方案2】:

      在花费大量时间研究之后,我们发现我们的一个库中的静态变量一直保留在内存中并且从未被释放。我们确实在视觉记忆快照中发现了这些静态变量,但拒绝相信这些是问题的真正原因,并试图找到不存在的对象。

      我们用属性替换了静态变量,解决了内存泄漏问题

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-03-07
        • 2014-05-10
        • 1970-01-01
        • 1970-01-01
        • 2010-09-26
        • 1970-01-01
        • 2013-04-25
        • 2013-08-09
        相关资源
        最近更新 更多