Quando a utilização de 100% da CPU não é uma preocupação?

6

Por favor, ajude a refinar uma discussão em andamento em nossa loja.

Considere o seguinte cenário. Há um Microsoft VPC executando vários aplicativos e serviços (servidor Windows 2003). O servidor tem duas ou três funções críticas. De vez em quando, a utilização da CPU atinge 100% de forma sustentada. Um dos culpados disso é um aplicativo legado, para o qual a única solução real, no momento, é reiniciar o serviço. Depois disso, a utilização da CPU retorna a algo razoável (em média, 60-80%). No entanto, com menos frequência, quando o servidor está com 100% da CPU, outro serviço parece estar usando a parte do leão, um aplicativo de segurança que analisa logs. O impulso de nossa equipe de operações é reiniciá-la quando a CPU for atrelada. Nossa equipe de segurança ressalta que isso é inútil, já que este serviço está sendo executado na prioridade BelowNormal, portanto, de forma eficaz, ele não está privando nenhum outro processo de CPU. Segurança argumenta que o uso de 100% da CPU nesses casos realmente não deve ser considerado uma condição crítica. Se um processo de prioridade BelowNormal estiver usando a maior parte da CPU, não haverá realmente nenhum déficit de CPU. As operações, por outro lado, não acreditam que a utilização de 100% da CPU possa ser uma condição sem conseqüências adversas e não queira ignorá-la. Quem está certo? A Segurança está certa de que não é nada para se preocupar ou Operações que devemos fazer alguma coisa?

    
por Eldergriffon 30.01.2010 / 00:10

3 respostas

7

Em casos como este, você precisa ir além do gerenciador de tarefas e observar o% de uso da CPU. Isso não diz se algo está afetando negativamente o desempenho. Para um caso como esse, a próxima etapa seria usar o Monitor de Desempenho para exibir Comprimento da Fila do Sistema \ Processador . Isso informa se os processos estão aguardando a CPU ficar inativa, possivelmente afetando o desempenho. Isso é semelhante ao que você vê no topo ou carrega comandos no Unix.

Este artigo tem uma boa descrição das métricas de desempenho a serem observadas ao solucionar esses problemas. Foi originalmente para o NT4, mas ainda se aplica a versões mais recentes.

Aqui está um artigo mais recente da equipe de desempenho do Windows falando sobre como solucionar problemas de desempenho com a CPU.

    
por 30.01.2010 / 00:19
2

Como você está medindo a% da CPU? Se esta for uma máquina virtual, o Perfmon nem sempre fornecerá resultados precisos. Existe a possibilidade de o pico estar relacionado à atividade na máquina host? Varreduras de vírus, atualizadores automáticos, muitas outras coisas podem afetar um guest vm e fazer com que pareça 100% cpu do ponto de vista da VM, pode ser 100% de uma fatia de CPU muito menor.

    
por 30.01.2010 / 00:49
1

O processamento de grandes quantidades de dados de log é algo que DEVE fixar a CPU. Se isso não acontecer, seu processo provavelmente será vinculado a E / S. Contanto que o medidor volte para baixo quando o processamento estiver completo (e a máquina responda razoavelmente às suas outras tarefas quando atrelada), não há nada com que se preocupar.

    
por 30.01.2010 / 00:31