Недавно я перенес набор серверов Windows Server 2008 R2 / IIS 7.5 на новые серверы под управлением Windows Server 2012 / IIS 8.
Я испытываю странное поведение со стороны IIS. У нас есть 2 одинаковых сервера, на каждом сервере запущено 2 веб-сайта, каждый из которых имеет собственный пул приложений. Код для каждого из веб-сайтов идентичен. (Буквально ... та же самая DLL и все, только немного другая конфигурация).
Пулы приложений настроены на перезагрузку по расписанию каждые 24 часа, но в течение этого 24-часового периода загрузка ЦП рабочего процесса w3wp увеличивается с шагом 12,5% (на сервере установлено 8 процессоров, поэтому я не думаю, что это совпадение).
Как только загрузка ЦП возрастет, он НЕ БУДЕТ возвращаться вниз, пока приложение не перезагрузится. Насколько я могу судить, приложение ничего не делает и в настоящее время не обрабатывает никаких запросов. Я могу заблокировать весь трафик на сервер, и загрузка процессора останется там. Я даже могу перезапустить веб-сайт, и загрузка процессора остается прежней. Единственный способ сбросить использование ЦП - это перезапустить или перезапустить пул приложений, в котором он работает.
Я несколько уверен, что эта проблема не имеет ничего общего с моим кодом, но какая-то плохая конфигурация IIS или изменение в IIS 8, которое плохо работает с конфигурацией оборудования или что-то в этом роде?
Не уверен, важно это или нет, но это серверы Rackspace Performance Cloud.
Вот снимок экрана, показывающий загрузку ЦП с течением времени на этих серверах (зеленые стрелки указывают время, когда пул приложений перезагружается. Вы можете видеть, что каждое плато является целым кратным 12,5%:
Кто-нибудь наблюдал такое поведение? Я нашел этот вопрос в 2009 году, когда у кого-то возникла та же проблема с IIS 6:
IIS w3wp использует высокий процессор без трафика
Любая помощь высоко ценится