4

Я запускаю нагрузочный тест на уровне оценки Azure Web App P3. У нас есть следующая стратегия автоматического масштабирования:Azure App Service - CPU Процент экземпляра vs plan

Экземпляр Min Instance 5 и Max 20, Increase by 1 Instance, если CPU Percentage (Max) превышает 85%, Уменьшение на 1 экземпляр, если CPU Процент Среднее значение меньше 50%

enter image description here

Прямо сейчас, он работает с 5 экземплярами. Если я перейду в область «Приложения», «Счётчик потоков данных» всех доступных экземпляров, это показывает, что использование ЦП составляет около 75% (в среднем) во всех 5 экземплярах. Фактически, некоторые из экземпляров приближаются к 85%.

enter image description here

В то время как, если я перехожу к использованию CPU графика на уровне App Service Plan (у меня есть только одно приложение работает в соответствии с планом), он показывает только 20%.

enter image description here

Как совместить эти две противоречащие друг другу статистику?

+1

В приложении Insights отображается ненормированный процессор. То есть значение может достигать 100% * количества ядер. «Live Metrics Stream» не должен называть его Total CPU. – ZakiMa

ответ

0

Согласно вашему описанию, я попытался выполнить нагрузочный тест против моего Azure Web App. Вот подробные показатели из Application Insights и App Service Plan, вы можете обратиться к нему.

Применение Insight> Метрики Проводник

Временной диапазон в течение часа

ПРОЦЕСС CPU: процент прошедшего времени всех потоков процесса, используемых процессором для выполнения процесса приложения. Этот показатель является средним. Каждая точка на графике представляет минута данных.

App Service Plan> Мониторинг

процент процессора с другой стороны, это полезно для приложений, размещенных в основных, стандартных и премиум планов, так как они могут быть расширены, и это метрика является хорошим показателем общего использования во всех случаях.

Примечание: Поскольку Живые Метрики поток предоставляет вам показатели в течение последних 60 секунд. Попробуйте сравнить показатели из плана App Service и Application Insights в пределах того же диапазона времени.

В моем понимании тенденция показателей из плана обслуживания и оценки приложений примерно одинакова. Для автоматического масштабирования я предположил, что вам лучше обратиться к метрикам с уровня плана App Service. Вот скриншот о показателях истории при добавлении правила для автоматического масштабирования, которое соответствует метрикам из «Плана обслуживания приложений> Мониторинг» с тем же интервалом времени.

Метрики при добавлении правила масштаба:

App Service Plan> Мониторинг

2

Что показано в 'Живой Метрики поток' является использование процессора процесса w3wp , тогда как то, что показано на уровне плана обслуживания приложений, - это общее использование CPU. Первый не нормируется для учета количества логических процессоров - поэтому вам нужно разделить его на количество ядер, чтобы получить нормализованный процент. Даже после этого метрика «Live Metrics Stream» может быть ниже, чем показатель AppServicePlan, поскольку первый показывает только использование w3wp, а последний показывает общее использование машинного процессора.