我在 Azure 应用服务计划中有五个应用,所有相同应用的不同副本都适用于不同的客户端。它是一个带有 SQL 数据库的 ASP.NET MVC 应用程序。
今天早上我醒来发现网站缓慢且无响应,有时会导致 503 错误。在检查应用服务计划的 CPU/内存指标时,我发现 CPU 与 100% 挂钩:
各个站点的 CPU 时间图显示它们都在同一时间运行,尽管有些比其他站点更糟:
我尝试通过执行高级应用程序重新启动来解决该问题,但刀片无法加载 - 我认为是因为它试图从无法响应的服务器获取信息。
最后,我尝试一个一个地停止每个站点,这使 CPU 回到零,然后再次启动它们,这似乎解决了问题,但现在其中一些开始爬回。
几周前我遇到了类似的问题,并认为我的应用程序计划变得太大了,所以从 S1 升级到 S2,直到今天都很好。
我完全不知道如何找出这种 CPU 饥饿行为的原因。谁能指出我如何开始诊断的正确方向?