2009-05-08 6 views
11

Tengo algunos servicios WCF alojados en un servicio de Windows. Ayer miré al Administrador de tareas y noté que el tiempo de CPU para mi proceso de servicio de Windows era de más de 5 horas, mientras que la mayoría de todos los demás procesos estaban en 0.¿Qué es exactamente el tiempo de CPU en el administrador de tareas?

¿Qué significa eso?

¿Debería preocuparme que el tiempo de CPU sea de más de 5 horas?

Respuesta

3

El tiempo de CPU es un reflejo de la cantidad de tiempo que su programa pasa ejecutando instrucciones en la CPU frente a IO u otros recursos. ¿Debería preocuparse de que sean más de 5 horas?

Conjeturaría no, algunas cosas a tener en cuenta son:

  1. ¿Cuánto tiempo ha estado funcionando este proceso?

  2. ¿Tiene algún problema con el rendimiento del proceso u otros procesos en la caja que podría estar robando la CPU?

  3. ¿Qué otros procesos tiene? ¿Son estos procesos activos los que esperaría usar la CPU? Como referencia de los 80 procesos que tengo, aproximadamente 20 tienen más de 1 segundo de tiempo de CPU utilizado.

Editar

Es posible que el servicio WCF está robando la CPU de los otros servicios, es necesario supervisarlos asegurarse de que su rendimiento es lo que espera. También puede tener sentido en función del uso total de la CPU. Si, por ejemplo, solo ve que se usa el 25% de su CPU, sus otros servicios no deberían verse afectados; sin embargo, si estás corriendo por encima del 75%, entonces pueden verse afectados.

Cuando se trata de monitorear, asegúrese de monitorear con el tiempo para que pueda ver cómo las tendencias de rendimiento, y le ayudará a aislar los problemas. Por ejemplo, su servicio está funcionando bien, pero luego, después de una implementación, lentamente comienza a tomar más y más CPU (suponga un 10% por semana). A menos que tengas tendencia al uso de tu CPU, es posible que un día te despiertes y veas que tu servicio se ejecuta lentamente, lo que podría ser semanas después de una implementación.

+0

El proceso se ha estado ejecutando durante aproximadamente 3 semanas. Se reinició anoche y el tiempo de CPU actualmente es de 31 segundos. No hemos notado ningún problema de rendimiento: el sitio web que utiliza estos servicios de WCF es muy rápido. Tenemos algunos servicios web SOAP alojados en el mismo cuadro en IIS, por lo que existe la preocupación de que el proceso WCF pueda robar CPU y afectar el rendimiento de otros servicios web. –

+3

Tiene 5 horas de tiempo de CPU en un proceso que ha estado funcionando 504 horas (3 semanas * 7 días/semana * 24 horas/día). De manera simplista, en promedio, su proceso ha estado usando el 1% de la CPU todo el tiempo. En realidad, por supuesto, ese no es el caso, hay veces que su servicio está usando cerca de 0% de CPU y otras veces está usando mucho más. Yo diría que no es nada de lo que preocuparse, pero si le preocupa, debe usar 'perfmon' para rastrear el uso de CPU de sus procesos a lo largo del tiempo para determinar si tiene un problema. –

13

CPU time es una indicación de la cantidad de tiempo de procesamiento que el proceso se ha utilizado ya que el proceso ha comenzado (en Windows:. Vínculo a un Technet article)

Está básicamente calcula:

CPU Time of Process = Process Uptime * CPU Utilization of Process 

Por ejemplo, si el proceso se ha estado ejecutando durante 5 horas y el tiempo de CPU es de 5 horas, significa que el proceso ha utilizado el 100% de los recursos de la CPU. Esto puede ser bueno o malo dependiendo de si desea mantener bajo el consumo de recursos o si desea utilizar toda la potencia del sistema.

Si el proceso utilizó el 50% de los recursos de la CPU y se ejecuta durante 10 horas, el tiempo de CPU será de 5 horas.

1

Si le preocupa la cantidad de tiempo de CPU que utiliza su proceso, debe usar perfmon para realizar un seguimiento del uso de la CPU de sus procesos durante un período prolongado de tiempo para determinar si tiene un problema.

0

¿Qué es exactamente el tiempo de CPU en el administrador de tareas?

respuesta es sencilla:

El tiempo total de procesador, en segundos, que utiliza el proceso desde que se inició.

+0

En minutos. No se confunda (como yo) con un proceso de larga duración y poca CPU, por un momento pensé que el tiempo de CPU era de horas: minutos, y que era más largo que el tiempo real desde que inicié el proceso. Oops. – yoyo

Cuestiones relacionadas