Linux slogan
Visite também: BR-Linux.org · Dicas-L · NoticiasLinux · SoftwareLivre.org · UnderLinux · BestLinux
» Screenshot



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

» Wallpaper

Dica

Limpando sua memória cache de forma simples
Linux user
Publicado por Marcelo Cavalcante Rocha em 10/07/2008

Login: kalib, 397756 pontos Homepage: www.tux-ce.org / www.marcelocavalcante.net
[ Hits: 5994 ]

Limpando sua memória cache de forma simples

Nesta dica apresentarei um comando simples para limpar sua memória em cache.

Resolvi escrever sobre por ter visto duas vezes na mesma semana problemas relacionados a isso. Um foi aqui mesmo onde trabalho, onde estávamos percebendo que o consumo de memória em um dos servidores estava muito alto, porém com pouca atividade no mesmo, no qual percebi que nada mais era do que muita memória alocada em cache sem necessidade no momento. Desenvolvedores java... vai entender.. hauhauha (brincadeira.. :p)

E outro caso foi uma dúvida que surgiu, bem parecida, em um fórum do qual faço parte no qual um rapaz estava passando pelo mesmo problema no servidor dele. Com consumo exagerado de memória. Ele até colou o resultado do top no qual podíamos ver claramente que não haviam processos consumindo tudo aquilo de memória, e mais uma vez pudemos ver que o grande vilão era o cache, o que lhe passava essa impressão de memória totalmente consumida.

O comando para se limpar este cache é o seguinte:

# echo 3 > /proc/sys/vm/drop_caches

Exemplo:

Aqui vai uma saída do meu top antes de rodar o comando (reparem no consumo de memória armazenada em cache na última linha):

top - 09:40:03 up  1:42,  1 user,  load average: 0.06, 0.20, 0.20
Tasks:  83 total,   2 running,  80 sleeping,   0 stopped,   1 zombie
Cpu(s):  4.3%us,  0.5%sy,  0.2%ni, 95.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1944240k total,   898916k used,  245324k free,    51176k buffers
Swap:   996020k total,        0k used,   996020k free,   969000k cached

Repare agora o resultado obtido pelo top depois de executar o comando para limpar o cache:

top - 09:45:03 up  1:47,  1 user,  load average: 0.32, 0.16, 0.17
Tasks:  85 total,   3 running,  81 sleeping,   0 stopped,   1 zombie
Cpu(s): 11.2%us,  1.5%sy,  0.0%ni, 63.4%id, 23.9%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1944240k total,   329412k used,  1614828k free,      768k buffers
Swap:   996020k total,        0k used,   996020k free,    69088k cached

A memória armazenada em cache caiu de ~969mb para ~69mb. ;]


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Mantenha o "ls" sempre colorido
   Dica Linux recomendada Comando eval
   Dica Linux recomendada Personalizando terminais Aterm, Eterm, RXVT e Xterm
   Dica Linux recomendada Correção automática de comandos no bash
   Dica Linux recomendada O comando tail

Comentários
[1] Comentário enviado por Pianista em 10/07/2008 - 16:38h:

eu digitei mas meus pensamentos poluidos e maliciosos ainda continuaram... rsrsrs

Valew! Otima dica. ajuda muito, principalmente com programadores Java.. rsrsrsrs

[2] Comentário enviado por maran em 10/07/2008 - 16:40h:

Este é um comando muito útil kalib.
é de dicas assim que precisamos, e que queria ver todo dia aqui no VOL, que realmente me ajudassem no dia-a-dia.
Abraços

[3] Comentário enviado por kalib em 10/07/2008 - 16:54h:

Huahuahaua
Vlw galera.. ;]
Depois devo estar postando uma dica sobre como tornar este processo automatizado..já que tive de fazer isto aqui na empresa..do contrário eu teria de efetuar este comando a cada meia hora no servidor dos desenvolvedores java... :p huahauha

[4] Comentário enviado por pitoow em 10/07/2008 - 21:49h:

Outra dica interessante também é desativar a memoria swap. você pode fazer com este comando

parar o uso da swap com:
sudo swapoff -a

reativar:

sudo swapon /dev/hda5

antes

http://img126.imageshack.us/img126/1457/swap1ju8.jpg

depois

http://img161.imageshack.us/img161/3203/swap2it9.jpg


[5] Comentário enviado por hlegius em 10/07/2008 - 23:12h:

A dica é super interessante e útil, mas não vejo a memória cache como uma vilã. Ela ajuda muito no desempenho das aplicações aqui no meu notebook. As aplicações e bibliotecas ficam em cache, facilita o acesso à outras aplicações e mantém a máquina sempre na mesma velo =)

Agora mesmo estou com 2.8GB em cache. Isso que liguei o note eram 9 horas da manhã. Continua rápido =)
Quem trabalha com a máquina - como eu que sou programador - acho que vale muito a pena investir em ram e economizar stress de máquina no limite de ram =~

Mas a dica é maneira e funcionou aqui hahaha =)


Abraço!

[6] Comentário enviado por shaitannechrist em 11/07/2008 - 04:30h:

òtima dica Kalib!
Se você São posts como esses que deixam meu Dia mais Feliz!
vai ser útil para meus Servers..hehe

[7] Comentário enviado por kalib em 11/07/2008 - 08:32h:

Acontece que o sistema operacional utiliza o cache como um ótimo recurso...sim..é verdade...auxilia em muitas vezes..
Mas, estranhamente, algumas aplicações..principalmente em java acabam por ignorar isso...como foi o que observamos aqui...e esquece que deixou algo alocado em cache... é como se alocasse...não desalocasse...e quando precisasse...alocasse mais memória ainda...enfim... o que no final do dia virava uma catástrofe. :/

[8] Comentário enviado por marcus-rj em 11/07/2008 - 09:46h:

Muito bom, gostei, a consideracao do kalib e do hlegius foram muito esclarecedoras.

Abs!

[9] Comentário enviado por kalib em 11/07/2008 - 09:50h:

Muito obrigado marcus-rj.. e aos demais também. ;]

Abraços

[10] Comentário enviado por luisbuso em 13/07/2008 - 01:17h:

obrigado pela dica. Estou aprendendo muito no VOL....
valeu

[11] Comentário enviado por SmithuX em 14/07/2008 - 16:39h:

Aê grande Kalib!
A dica realmente é bastante útil!!!

Pra quem quiser conhecer um pouquinho mais sobre esse e outro comando que tem a mesma função, acesse o link abaixo:

http://www.vivaolinux.com.br/dicas/verDica.php?codigo=10631

[12] Comentário enviado por kalib em 14/07/2008 - 16:55h:

Opa..grande archsmith.. ;]

Putz..nem tinha visto tua dica..se tivesse visto teria pulado direto para a segunda..que mandei hoje...em breve deve estar sendo publicada...mas segue essa mesma linha. ;]

abraço

[13] Comentário enviado por SmithuX em 14/07/2008 - 18:28h:

Esquenta não meu velho!!!

Quase ninguém viu minha dica quando postei mesmo.... Rsrsrsr!!!

Já que vc é mais conhecido no fórum, acho que repercurtiu mais a dica!!!

Mas o que eu acho que vale é que todos se beneficiem com a sua ou a minha dica, não importa!!!

Grande abraço! :D



[14] Comentário enviado por SmithuX em 14/07/2008 - 18:33h:

Pô....

Além de tudo, assim que fiz a dica também pedi pra que publicassem aqui no VOL um script com para automatizar essa tarefa de limpeza de memória......

Mas até hoje nada.........

Já vi que o Fábio respondeu em outro tópico que as partes de CONF e SCRIPTS realmente estão com falta de moderadores....

Mas o que podemos fazer no momento é aguardar né?!

Grande abraço a todos!!!

[15] Comentário enviado por kalib em 14/07/2008 - 20:40h:

Sem stress... também fiz uma segunda dica... com um simples shell e o agendamento no crontab. ;]
Deverá estar sendo publicado em breve! ;]

[16] Comentário enviado por annak1408 em 16/07/2008 - 23:19h:

?comentario=
fiz isso daqui na minha máquina:
echo 3 > /proc/sys/vm/drop_caches drop caches=3

[17] Comentário enviado por xiiico em 06/05/2009 - 17:49h:

na boa... ainda acho melhor deixar o sistema gerenciar a memória cache! fiz uns teste aqui com java e, nao vejo o pq limpar, ainda acho que é até mais vantegem deixar o sistema gerenciando maior quantidade da mémória. Acredito que a establidade ao longo prazo ficaria melhor! ... Minha opnião apenas! Abraços!

Mas a dica é excelente de qq forma!
Xiiico.


Contribuir com comentário
  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Copyleft© 2002-2009 Viva o Linux.com.br

Viva o Linux

A maior comunidade Linux do Brasil! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.