Tempo de leitura: 2 minutos

Após uma atualização do linux (ubuntu) o meu servidor web (Apache) passou a consumir muita memória chegando a parar de responder aleatoriamente várias vezes ao dia. Para ganhar tempo e verificar o problema com calma eu criei um script que verifica se o consumo de memória do servidor chegou a um determinado percentual e reinicia o serviço do Apache, atuando assim como um “bandaid”!

Note que no meu caso, o processo que estava consumindo a memória era o webserver Apache, porém você pode alterar o script para tratar outro processo caso deseje.

Segue instruções de implementação:

    1. Baixe o script: apache-free.sh *

 

    1. Salve em seu servidor e dê as permissões necessárias:

       

        • chmod 755 apache-free.sh

       

      • chmod +x apache-free.sh

 

  1. Para executar manualmente use ./apache-free.sh

Para automatizar o processo você pode criar um agendamento na maquina fazendo uso do cron . Para isso, execute no terminal:

  •  crontab -e

Em alguns casos é exibido opções de editor de texto para ser usado para editar o arquivo de configuração do cron. (prefira o nano)  e adicione no final do arquivo:

  • */1 * * * * cd /dir/of/script && sh apache-free.sh

onde, /dir/of/script deve ser substituído pelo local onde você salvou o script. Ex.: se você salvou em /tmp/ o comando acima ficará assim:

*/1 * * * * cd /tmp && sh apache-free.sh

salve o arquivo e seja feliz… até encontrar a solução definitiva! 😛

*Dica: Sempre abra os scripts que você baixar e leia o conteúdo antes de executá-lo. Essa boa prática vai te ajudar a não fazer besteira executando scripts mal-intencionados. Saiba o que você está fazendo ou peça ajuda!