我正在针对Azure Web App P3定价层运行负载测试 . 我们有以下自动扩展策略 -
最小实例5和最大实例20,如果CPU百分比(最大值)超过85%,则增加1个实例,如果CPU百分比平均值低于50%,则减少1个实例
现在,它正在运行5个实例 . 如果我转到所有可用实例的Applications Insights,“实时指标流”窗格,它会显示所有5个实例中的CPU使用率约为75%(平均值) . 事实上,有些情况接近85% .
然而,如果我转向应用服务计划级别的CPU使用率图表(我只有一个应用程序在该计划下运行),它只显示20% .
我们如何协调这两个相互冲突的统计数据?
2 回答
根据您的描述,我尝试对我的Azure Web App运行负载测试 . 以下是Application Insights和App Service Plan的详细指标,您可以参考它 .
Application Insight > Metrics Explorer
App Service Plan > Monitoring
Note: 由于Live Metrics Stream在最近60秒内为您提供指标 . 请尝试在同一时间范围内比较App Service Plan和Application Insights中的指标 .
根据我的理解,服务计划和应用程序洞察的指标趋势大致相同 . 对于自动扩展,我假设您最好参考应用服务计划级别的指标 . 以下是添加自动缩放规则时的历史记录指标的屏幕截图,该规则与“App Service Plan> Monitoring”中具有相同时间范围的指标相匹配 .
添加比例规则时的指标:
应用服务计划>监控
“实时度量标准流”中显示的是w3wp进程的CPU使用率,而应用程序服务计划级别中显示的是计算机CPU的总使用量 . 前者未考虑逻辑处理器的数量而进行标准化 - 因此您需要将其除以核心数以获得标准化百分比 . 即使在此之后,“实时指标流”指标也可能低于AppServicePlan指标,因为前者仅显示w3wp使用情况,后者显示总机器CPU使用情况 .