Нещодавно я перемістив набір серверів Windows Server 2008 R2 / IIS 7.5 на нові сервери під управлінням Windows Server 2012 / IIS 8.
Я відчуваю деяку дивну поведінку від IIS. У нас є 2 однакових сервери, на кожному сервері працює 2 веб-сайти, кожен у своєму власному пулі додатків. Код для кожного з веб-сайтів ідентичний. (Буквально ... ті ж DLL і все, лише трохи інша конфігурація).
Пул додатків встановлюється для повторного використання за графіком кожні 24 години, але протягом цього 24-годинного періоду використання процесора робочого процесу w3wp підскакує з кроком 12,5% (сервер має 8 процесорів, тому я не думаю, що це збіг обставин).
Як тільки використання процесора стрибне вгору, воно НЕ буде повертатися вниз, поки додаток не переробляється. Наскільки я можу сказати, програма наразі нічого не робить і не обробляє NO запитів. Я можу заблокувати весь трафік на сервері, і використання процесора просто залишиться там. Я навіть можу РЕСТАРТУВАТИ веб-сайт, і використання процесора залишається таким же. Єдиний спосіб відновити використання процесора - це переробити або перезапустити пул додатків, на якому він працює.
Я дещо впевнений, що ця проблема не має нічого спільного з моїм кодом, але якась погана конфігурація IIS або зміна IIS 8, яка погано працює з конфігурацією обладнання або щось таке?
Не впевнений, важливо це чи ні, але це хмарні сервери Rackspace Performance.
Ось скріншот, який показує навантаження процесора з часом на ці сервери (зелені стрілки вказують на часи, коли пул додатків переробляється. Ви можете бачити, що кожне плато є невід'ємним кратним 12,5%:
Хтось спостерігав таку поведінку? Я знайшов це запитання з 2009 року, коли хтось із тим, що видається тим самим, що стосується IIS 6:
IIS w3wp, використовуючи високий процесор без трафіку
Будь-яка допомога дуже цінується