2012-02-10 2 views
2

Я вижу высокий процессор на моем сервере. Я взял свалку и выстрелил в windbg.Высокий процессор и высокое количество таймеров

Я получаю следующее, но не уверен, что сделать из него:

 
From !runaway 
Top 5 thread related to CPU`enter code here` 
    Thread  Time 
    33:1758  0 days 0:08:58.109 
    24:128c  0 days 0:05:09.531 
    25:15b0  0 days 0:04:53.281 
    23:a94  0 days 0:04:50.343 
    26:bf8  0 days 0:04:48.984 

из ThreadPool

 
0:000> !threadpool 
CPU utilization 100% 
Worker Thread: Total: 18 Running: 17 Idle: 1 MaxLimit: 400 MinLimit: 4 
Work Request in Queue: 4 
AsyncTimerCallbackCompletion [email protected] 
AsyncTimerCallbackCompletion [email protected] 
Unknown Function: 6a2aa293 Context: 3a1bc2e0 
-------------------------------------- 
Number of Timers: 30 
-------------------------------------- 
Completion Port Thread:Total: 1 Free: 1 MaxFree: 8 CurrentLimit: 0 MaxLimit: 400 MinLimit: 4 
0:000> !threads 
ThreadCount: 56 
UnstartedThread: 0 
BackgroundThread: 56 
PendingThread: 0 
DeadThread: 0 
Hosted Runtime: no 

Может кто-нибудь помочь мне с этим!?

+0

Что такое стек вызовов, как для Thread 33, который имеет наибольшее время процессора? Вы можете сделать «Clrstack; kb», чтобы получить управляемые и собственные вызовы. – Naveen

+0

, поэтому у меня есть аварийный сброс из двух источников. пул приложений по умолчанию и сервер приложений службы. У пула приложений по умолчанию есть 5 потоков (21,22,23,24,41) с высоким процессором, а сервер приложений службы имеет один поток (33) с высоким значением процессора. мы взяли дамп два раза и оба раза это правда. это стек вызовов из потока пула приложений по умолчанию 41 – Chito

+0

Я понятия не имею, как разместить весь стек здесь. есть способ прикрепить файл – Chito

ответ

0

Единая свалка бесполезна. Вам нужно захватить несколько висячих отвалов с интервалом в одну минуту, а затем использовать побег, чтобы найти виновника. После этого CLRStack и kb могут показать вам больше информации об этом потоке.

+0

нет ничего с стеком вызовов, но с КБ я получил следующее – Chito

+0

ChildEBP RetAddr Args в Child18c4f31c 75f51270 000005fc 00000000 18c4f364 Ntdll ZwWaitForSingleObject + 0x15 – Chito

+0

'0: 033> кб ChildEBP RetAddr Args для ребенка 18c4f31c 75f51270 000005fc 00000000 18c4f364 Ntdll! ZwWaitForSingleObject + 0x15 .... 18c4f38c 72e2553f 000005fc 00001388 00000000 kernel32! WaitForSingleObjectEx + 0xbe .... 18c4f3d0 72e2548b 000005fc 00001388 00000000 mscorwks! PEImage :: LoadImage + 0x1af ... 18c4f420 72e254aa 00001388 00000000 00000000 mscorwks CLREvent :: WaitEx + 0x117..18c4f434 72e639b3 00001388 00000000 00000000 mscorwks! CLREvent :: Wait + 0x17..18c4f4b4 7310fc02 01a67650 00001388 00000000 mscorwks! ThreadpoolMgr :: SafeWait + 0x73' – Chito

Смежные вопросы