Я развернул веб-сайт .NET на сервере 2008 (IIS7), и кажется, что сайт работает до 30-50 одновременно работающих пользователей. При нагрузочном тестировании сайт останавливается примерно после 100 одновременных пользователей. Загрузка страниц идет от 1,5 секунд до 90 +
w3wp достигает 100% и остается таким до тех пор, пока я не остановлю нагрузочный тест. С другой стороны, SQL бездействует на 2-3%.
Я провел трассировку с помощью команды debug diag, и отчет указывает на один из потоков, который занимает 11,358 процессорного времени против 0,687 для ближайшего участника, занявшего второе место. Здорово, что я нашел виновника, однако я понятия не имею, что делать с информацией, которую мне дали. Вот вывод отчета.
Тема 19 - Идентификатор системы 4016 Точка входа
0x00000000 Время создания 8.07.2009
9:28:53 PM Время, проведенное в режиме пользователя
0 Дней 00: 00: 11.187 Время, проведенное в
режим ядра 0 дней 00: 00: 00.171
Источник функции
Ntdll! KiFastSystemCallRet
Ntdll! NtWaitForSingleObject + с
kernel32! WaitForSingleObjectEx + будет
mscorwks! PEImage :: LoadImage + 1AF
mscorwks! CLREvent :: WaitEx + 117
mscorwks! CLREvent :: Wait + 17
mscorwks! ThreadpoolMgr :: SafeWait + 73
mscorwks! ThreadpoolMgr :: WorkerThreadStart + 11с
mscorwks! Thread :: intermediateThreadProc + 49
kernel32! BaseThreadInitThunk + e ntdll! __RtlUserThreadStart + 23
Ntdll! _RtlUserThreadStart + 1b
Любая помощь приветствуется!