Пожалуйста, помогите уточнить обсуждение, происходящее в нашем магазине.
Рассмотрим следующий сценарий. Существует Microsoft VPC, на котором запущено несколько приложений и служб (сервер Windows 2003). У сервера есть две или три критических роли. Время от времени загрузка ЦП достигает 100% на постоянной основе. Одним из виновников этого является устаревшее приложение, для которого единственное реальное решение на данный момент - перезапустить службу. После этого загрузка процессора возвращается к разумным (в среднем 60-80%). Однако реже, когда сервер загружен на 100% ЦП, львиную долю используется другая служба - приложение безопасности, которое анализирует журналы. Импульс нашей операционной группы состоит в том, чтобы перезапустить и это, когда ЦП становится заблокированным. Наша команда безопасности отмечает, что это бессмысленно, поскольку эта служба работает с приоритетом ниже нормального и не лишает другие процессы ЦП. Служба безопасности утверждает, что 100% использование ЦП в таких случаях не должно считаться критическим состоянием. Если процесс с приоритетом «Ниже нормального» использует большую часть ЦП, то на самом деле дефицита ЦП вообще нет. С другой стороны, операторы скептически относятся к тому, что 100% загрузка ЦП действительно может быть условием без неблагоприятных последствий, и не хотят его игнорировать. Кто прав? Правы ли Служба безопасности в том, что беспокоиться не о чем, или Шефу, что мы должны что-то делать?
В таких случаях вам нужно выйти за рамки диспетчера задач и посмотреть на% использования ЦП. Это не говорит вам, если что-то отрицательно влияет на производительность. В таком случае следующим шагом будет использование Монитор производительности смотреть Система \ Длина очереди процессора. Это сообщает вам, ожидают ли процессы, пока ЦП перейдет в режим ожидания, что может повлиять на производительность. Это похоже на то, что вы видите в верхней части или командах загрузки в Unix.
Эта статья содержит хорошее описание показателей производительности, на которые следует обратить внимание при устранении этих проблем. Первоначально это было для NT4, но все еще применимо к более новым версиям.
Вот более свежая статья от команды Windows Performance Team, рассказывающей о том, как найти проблемы с производительностью процессора.
Как вы измеряете CPU%? Если это виртуальная машина, Perfmon не всегда может давать точные результаты. Есть ли вероятность, что всплеск связан с активностью на хост-машине? Сканирование на вирусы, автоматическое обновление и многое другое может повлиять на гостевую виртуальную машину и сделать ее похожей на 100% ЦП с точки зрения виртуальной машины, это может быть 100% гораздо меньшего участка ЦП.
Обработка огромных объемов данных журнала - это то, что НЕОБХОДИМО привязать процессор. Если это не так, то ваш процесс, скорее всего, привязан к вводу-выводу. Пока счетчик возвращается в норму после завершения обработки (и машина в разумных пределах реагирует на свои другие обязанности при привязке), беспокоиться не о чем.