Processo “httpd” do Apache, utilizando toda a memória dos meus servidores

9

Minha pequena instância ec2 com 1.7 GB de memória, rodando o Amazon AMI baseado no CentOS, tem um problema com o Apache utilizando muita memória do que deveria. Se você der uma olhada na captura de tela, o uso de memória será de 90-100% até que eu reinicie o serviço httpd, onde ele será reiniciado, aumentando o seu caminho de volta para 90+%.

Eurealmentegostariadereceberajudasobrecomolocalizaroproblema.Issoétalvezumcomportamento"normal" do apache, para utilizar toda a memória disponível? Ou há um possível vazamento que eu tenho que caçar. No momento, estou um pouco perplexo com o que poderia estar acontecendo.

Estamos usando o prefork do Apache MPM e nenhum sql ou qualquer coisa semelhante - apenas apache. O site é aqui .

    
por Amivit 17.07.2012 / 21:08

2 respostas

8

Como o HTTP500 disse, você provavelmente não deveria se preocupar com isso, a menos que a máquina esteja realmente sufocando. Dê uma olhada em Ajuda! Linux comeu minha RAM! . Não é bem uma situação análoga, pois você tem processos em vez de buffers usando a RAM, mas não está muito longe: a RAM física da sua máquina é um recurso a ser usado, com buffers do kernel ou processos de trabalho do Apache para manipular prontamente solicitações de. Se você não está usando RAM, você pagou em excesso pelo tamanho da sua caixa.

De qualquer forma, se você quiser jogar com configurações de MPM, a documentação do Apache é link

Você pode talvez reduzir os MinSpareServers, StartServers, etc., como você declarou que o site está com pouco tráfego. Você então terá mais RAM livre para ser consumida pelos buffers do kernel para seus fins nefastos.

    
por 17.07.2012 / 21:28
4

o linux usando toda a sua memória é normal, a memória que não está em uso é usada novamente como cache de disco. veja: linux comeu meu ram

Você pode verificar isso observando a saída de free -m e espera ver algo assim:

             total       used       free     shared    buffers     cached
Mem:          7889       6887        101          0        106       2307
-/+ buffers/cache:       5373       3416
Swap:         1903         17       1886

a linha de buffers / cache +/- é aquela que você deseja. Ele adiciona memória RAM em cache para oferecer uma imagem melhor da quantidade de memória disponível. Nesse caso, você deseja prestar atenção ao número 3416, não 101.

    
por 17.07.2012 / 21:28