Azure 网站 CPU 在一天中的随机时间间隔内处于高位

标签 azure azure-sql-database azure-web-app-service

我有一个 Azure 网站运行了 6 个月,在 2016 年 4 月 1 日星期五晚上 09:50,CPU 非常高,这对网站的性能产生了影响。停止并重新启动 Web 服务解决了问题,但问题在下午 13:00 又恢复了。从那时起,CPU 一直居高不下,导致网站无法使用

我已尝试所有监控工具、Daas、事件日志,检查打开的连接并确保我的软件正确关闭或处置对象。

但是CPU仍然很高。唯一的解决方法是重新启动网络服务,但我不想继续这样做。

其他人是否遇到过类似的问题以及解决方案是什么。

事件日志中唯一看起来有问题的是奇怪的“建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误”,这可能是因为 SQL Aure 不可用。

请帮忙

最佳答案

嗯,高 cpu 意味着您的网站正在执行代码,可能是某些不频繁的代码路径上的错误循环。

识别正在执行的代码的强力方法是通过 System.Diagnostics.Trace.WriteLine("I am here") 将跟踪添加到您的解决方案,然后检查 Azure 应用程序日志。

另一种方法是在 CPU 较高时附加 Visual Studio 调试器并检查正在执行的内容

另一种方法是从 kudu 站点获取转储或小型转储并使用 WinDbg 对其进行分析: 1)什么线程正在消耗cpu: !逃跑 2)这个线程在做什么: !clrstack

hth, 奥尔多

关于Azure 网站 CPU 在一天中的随机时间间隔内处于高位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36421909/

相关文章:

powershell - 获取 AzureNetworkSecurityGroup 不起作用

sql-server - 仅与 Active Directory 建立连接...用户 '<token-identified principal>' 登录失败

azure - Elmah 不记录任何错误消息

azure - Azure 网站上的传出流量随机出现 21/42 秒超时

azure-application-insights - 在门户上启用应用程序洞察扩展后,应用服务停止工作

azure - 通过 PowerShell 查找 Azure SQL 数据库异地复制辅助数据库

azure - 如何使用 Powershell 激活特权访问组?

Azure Function EventHubTrigger 属性未找到事件中心名称

sql-server - 将数据从 SQL Server 流式传输到 Azure 数据仓库

node.js - Azure 上的错误 : listen EACCES 0. 0.0.0:80 错误