O que você faz quando recebe um alerta de que o seu sistema está lento ou sobrecarregado? Rastrear a causa da sobrecarga só leva algum tempo, alguma experiência e algumas ferramentas do GNU/Linux.
A próxima causa em sobrecarga é um sistema que não tem memória RAM disponível e começou a entrar em SWAP. Como o espaço de SWAP é geralmente em um disco rígido que é muito mais lento que a memória RAM, quando você usa a memória RAM disponível e passa a utilizar a memória SWAP, cada processo fica mais lento dramaticamente, à medida que o disco se acostuma.
O top novamente pode nos ajudar a identificar se o problema de lentidão é por falta de memória RAM.
Quando eu quero diagnosticar problemas de memória insuficiente, o primeiro lugar que eu olho é o próximo par de linhas na saída top:
Esse comando engana muita gente que acha que a memória está sobrecarregada. Aparentemente, você só tem 26768k de memória livre, o que dá a impressão que está faltando memória para o servidor, mas isso não é verdade.
O GNU/Linux usa a memória inutilizada pelo seu sistema para o cache de disco. Isso nos dá a impressão que o sistema tenha pouca memória, mas não é isso. Se os aplicativos que você executar requererem mais memória, simplesmente o GNU/Linux vai devolver o cache de disco que foi emprestado temporariamente.
O cache de disco pode sempre ser devolvido a qualquer momento - e automaticamente - pelo seu sistema. Você não está com falta de memória RAM!
E para saber o que realmente o seu sistema está utilizando, sem contar o cache, vamos utilizar outro comando:
Para verificar quanta memória RAM está disponível para uso em suas aplicações, execute um free -m e veja a linha que diz "-/+ buffers/cache" na coluna que diz "free", esta é a sua resposta em megabytes.
[14] Comentário enviado por arthurmatiello em 28/01/2015 - 09:42h
[12] Comentário enviado por kennerc em 27/01/2015 - 11:09h
Muito bom o artigo!
Seria possível verificar se a lentidão está ocorrendo por HD já com problemas?
Não entendi sua pergunta.
Com o comando iostat, ele mostra todos os discos, lá você consegue ver qual está com uma leitura e/ou escrita alta e identificar qual disco ou partição está o problema.
Se quiser verificar a saúde do disco, utilize:
badblocks -v /dev/disco
[16] Comentário enviado por felipemartinsss em 30/01/2015 - 13:43h
Muito interessante esse artigo, favoritado.
Tenho algumas classes complexas escritas em Java que a meu ver, consomem muita memória (até estourar um OutOfMemoryError).
Mas nunca rodei esse comando para acompanhar a evolução desse uso.
Vou fazer isso quando puder.
[18] Comentário enviado por albfneto em 03/02/2015 - 15:12h
o Artigo é excelente e muito útil. Favoritado.
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux,Linux Counter: #479903.
Distros Favoritas: Sabayon, Gentoo, OpenSUSE, Mageia e OpenMandriva.