Quando um processo do Linux começa a consumir muita CPU, a primeira reação nem sempre deve ser matarSe o serviço estiver funcionando corretamente, desligá-lo abruptamente pode causar a falha de uma tarefa, a corrupção de um backup ou a interrupção de um processo em andamento. Nesse caso, legal E Renice Permite diminuir sua prioridade sem interrompê-lo.
Observação: esses comandos não reduzem a carga magicamente. Eles alteram a prioridade da CPU vista pelo agendador do Linux. Isso é útil para dar ao servidor um pouco de folga, mas se um aplicativo entrar em loop ou bloquear um banco de dados, você ainda precisará ler os logs e entender a causa.

Entenda o valor ideal antes de modificar um processo.
No Linux o valor legal geralmente vai de menos vinte tem dezenoveQuanto menor o valor, maior a prioridade do processo. Quanto maior for o valor, mais espaço sobra para outras tarefas.
menos vinte: prioridade muito alta, a ser reservada para casos controlados;zero: prioridade padrão de muitos processos;dezOuquinzedezenove: prioridade muito baixa.
Um usuário comum geralmente pode diminuir a prioridade de seus próprios processos. Aumentar a prioridade de um processo requer privilégios de root. Isso é intencional: definir uma prioridade muito alta em um servidor compartilhado pode interromper o funcionamento do restante do sistema.
Executar um comando com prioridade mais baixa
A ordem legal É utilizado quando você inicia um programa. Exemplo simples:
comando nice -n 10
Para compressão elevada, isso pode resultar em:
nice -n 10 tar -czf backup.tar.gz /srv/data
A tarefa está sempre em execução, mas evita sobrecarregar outros processos de forma excessiva. Eu a utilizo principalmente para processamento em segundo plano: compressão, conversão, digitalização, scripts personalizados ou operações demoradas que não precisam ser concluídas em menos de um minuto.
Veja a prioridade atual com ps, top ou htop.
Antes de alterar qualquer coisa, identifique o processo envolvido. Um resultado. p.s. Direcionado costuma ser suficiente:
ps -eo pid,ni,pri,pcpu,pmem,comm --sort=-pcpu | head
A coluna NENHUM Exibe o valor “legal”. A coluna PRI Fornece uma prioridade calculada pelo kernel. Para uma leitura rápida em tempo real, você também pode abrir:
principal
Ou use htop para ler a carga do servidorNo htop, a ordenação por CPU e a subsequente verificação do PID já impedem o usuário de tomar muitas decisões equivocadas.
Modificar um processo já iniciado com renice
Se o processo já estiver em execução, legal já não é suficiente. Devemos usar RenicePrimeiro, recupere o PID e, em seguida, diminua a prioridade:
renice +10 -p 1234
Aqui, mil duzentos e trinta e quatro deve ser substituído pelo PID real. Em um processo que pertence a outro usuário, ou se você quiser aumentar sua prioridade, siga as instruções abaixo. sudo :
sudo renice -5 -p 1234
Eu desaconselho a definição de valores negativos sem um motivo específico. Em um servidor de produção, essa raramente é a melhor primeira resposta. Diminuir a prioridade de um processo que consome muitos recursos costuma ser mais saudável do que conceder acesso indevido à CPU a um serviço mal diagnosticado.
Verifique se a alteração foi aplicada.
Depois de um Renice, releia o valor NENHUM :
ps -o pid,ni,pri,pcpu,pmem,comm -p 1234
Você também pode analisar a carga total:
tempo de atividade
Se o servidor continuar lento, não tire conclusões precipitadas de que… Renice Não está funcionando. O gargalo pode ser o disco, a memória, um bloqueio de aplicativo ou um serviço que está reiniciando em loop. Nesse caso, verifique os logs com jornalctl e registros de aplicativos com cauda.
Quando ser gentil não basta
legal E Renice Essas medidas afetam a prioridade da CPU. Elas não limitam a memória, não corrigem consultas SQL instáveis nem substituem um limite de recursos real. Se você precisa limitar um serviço adequadamente, considere o systemd, os cgroups ou a configuração do aplicativo.
Se o processo estiver claramente bloqueado ou for perigoso, pode ser necessário interrompê-lo. Nesse caso, use o método adequado: identifique o serviço, leia os registros, tente um desligamento normal e somente então use [o método apropriado]. matar sem interromper o processo ruim.
As páginas de manual do legal, Renice E p.s. Eles detalham as opções disponíveis. Na prática, lembre-se acima de tudo desta regra: diminua a prioridade de uma tarefa de longa duração se ela estiver sobrecarregando o servidor, mas não a utilize para mascarar um problema real de carga.