A utilização de 100% da CPU ou 100% do MEM tornará o servidor Linux mais instável?

A utilização de 100% da CPU ou 100% do MEM tornará o servidor Linux mais instável?

A utilização de 100% da CPU ou 100% do MEM tornará o servidor Linux mais instável? De tal forma que ele trava e precisa ser reinicializado.

Porque eu ouvi isso:

“Se você limitar o processo a 90% da CPU, estará desperdiçando 10% do poder de computação por nada”

contra

"Por favor, limite o uso da CPU abaixo de 90% para o seu processo ou o sistema ficará instável"

Qual das afirmações é verdadeira? O sistema operacional Linux não deveria lidar com casos de alta utilização?

Entendo que em uma máquina cliente, provavelmente não quero 100% de uso da CPU, pois isso retarda logins, comandos cli e qualquer coisa interativa. Mas em um servidor agindo como umnó de trabalho, a utilização da CPU deve ser de 100% ou limitada abaixo de 100%? A mesma pergunta para MEM.

Responder1

Um servidor com 100% de uso da CPU não responderá muito bem a novas tarefas e poderá ficar lento se usado de forma interativa, mas deverá continuar funcionando. Nós de trabalho que executam tarefas com uso intensivo de CPU em ou perto de 100% são adequados. Um PC de mesa, nem tanto.

Um servidor com 100% de memória começará a eliminar tarefas ou travará.

Responder2

Esta é uma pergunta com uma resposta complexa.

A resposta curta é que não, a alta utilização de recursos não tornará o servidor instável ou travará por si só. MAS...

A resposta longa é que depende. A alta utilização da CPU pode, por exemplo, resultar em tempos de resposta insatisfatórios, conflitos de recursos e problemas agravados em que as solicitações ficam na fila mais rápido do que o servidor pode lidar com elas. Isso efetivamente tornaria o servidor instável.

A prioridade do processo também desempenha um papel importante aqui. As tarefas de prioridade mais alta têm preferência ao tempo de CPU, o que pode resultar em tarefas de prioridade mais baixa, acabando com falta de recursos e, assim, tornando o sistema instável.

Por outro lado, uma tarefa com uso intensivo de CPU intencionalmente definida como baixa prioridade poderia utilizar qualquer CPU que de outra forma estaria ociosa sem afetar visivelmente o desempenho do sistema. Programas como o Folding@Home usam isso para rodar em segundo plano sem afetar o resto do sistema.

A alta utilização de memória pode resultar em troca, o que reduz ainda mais o desempenho do servidor e pode efetivamente torná-lo instável.

A alta utilização de memória também pode resultar em problemas de falta de memória que fariam com que os processos fossem encerrados. Isso definitivamente tornará o servidor instável e propenso a travar.

Tudo depende do que o servidor deve fazer. Um servidor web com uma utilização tão alta provavelmente correria o risco de ficar inutilizável, mas um servidor de codificação de vídeo funcionaria perfeitamente.

E depois há as questões de consumo de energia, geração de calor, capacidade de refrigeração e assim por diante...

Responder3

Isso depende totalmente do que esses servidores FAZEM.

Aqui uma história. Windows, mas ainda assim o mesmo.

Tenho um agente de software que utilizará um servidor com 100% da CPU. PERÍODO. Independentemente do tamanho. É um agente de simulação estatística que pega jobs de um servidor - ONE PER CORE - e os executa. Em baixa prioridade, com um thread de controle de prioridade mais alta, garantindo que todos estejam ocupados.

100% CPU é um problema? NÃO. Isto é o que está planejado fazer.

OTOH, um servidor de banco de dados com gerenciamento de memória SMART, usará o máximo de memória possível para armazenamento em cache e liberará a memória quando necessário. Novamente, não é um problema.

informação relacionada