У нас тоже самое ASP.NET application
работает на паре серверов:
IIS 8.5
на Windows Server *2012* R2
IIS 7.5
на Windows Server *2008* R2
Меня беспокоит то, что новее машина, кажется, работает хуже чем обе старые машины!
В окне 2012 года окно продолжительностью около 80 минут показывает среднее 37% загрузка ЦП (Время процессора) и 8 запросов / сек в среднем.
На коробке 2008 года в тот же период я вижу 32,5% загрузка ЦП и 12,5 запросов / сек.:
Более того, процессор в коробке 2012 года (Intel Core i7-4770 @ 3,40 ГГц) на самом деле должен быть быстрее, чем тот, что был на коробках 2008 года (Intel Xeon E3-1230 @ 3,20 ГГц):
К моему непониманию этой разницы в производительности добавляется тот факт, что экземпляр 2012 года запускает только одно приложение ASP.NET, тогда как оба сервера 2008 года также выполняют другие задачи: один запускает сервер БД, к которому обращаются все три экземпляры приложений, другой запускает довольно много других приложений ASP.NET под тем же экземпляром IIS.
ВОПРОС:
Может ли кто-нибудь пролить свет на то, что может быть причиной того, что лучше оборудованный сервер так сильно отстает с точки зрения производительности приложений ASP.NET?
Я считаю, что это было описано в нескольких местах, но Сбалансированный Схема управления питанием может вызвать чрезмерное количество переходов между состояниями производительности. Это приводит к исключительно низкой производительности и влияет как на физические, так и на виртуальные.
Измените схему электропитания на Высокая производительность использовать оборудование до его пределов.
Низкая производительность в Windows Server 2008 R2 при использовании «сбалансированной» схемы управления питанием:
https://support.microsoft.com/en-us/kb/2207548
https://sqlserverperformance.wordpress.com/2010/09/28/windows-power-plans-and-cpu-performance/
http://www.brentozar.com/archive/2010/10/sql-server-on-powersaving-cpus-not-so-fast/
ИЗМЕНИТЬ @oliver:
Переход на Высокая производительность Схема электропитания привела к следующей статистике PerfMon: