Minha pequena instância de ec2 com 1,7 GB de memória, executando a Amazon AMI baseada 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 da memória será de 90 a 100% até eu reiniciar o serviço httpd, onde será iniciado novamente, aumentando o caminho de volta para mais de 90%.
Eu realmente gostaria de receber alguma ajuda sobre como localizar o problema. Esse é talvez um comportamento apache "normal" 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 pré-fork Apache MPM, e nenhum sql ou algo semelhante - apenas apache. O site está aqui .
fonte
RequestHeader set X-Request-Start "%t"
se ainda não o tiver. Isso aparecerá como "Enfileiramento de solicitações" quando você acessar Servidor de aplicativos> Visão geral - pode ajudar você a chegar ao final do problema.Respostas:
Como o HTTP500 disse, você provavelmente não deve se preocupar com isso, a menos que a máquina esteja realmente sufocando. Dê uma olhada na Ajuda! Linux comeu minha RAM! . Não é uma situação bastante 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 sobressalentes de trabalho do Apache para lidar prontamente com as entradas solicitações de. Se você não estiver usando RAM, pagou em excesso pelo tamanho da sua caixa.
De qualquer forma, se você quiser jogar com as configurações do MPM, a documentação do Apache é http://httpd.apache.org/docs/current/mod/prefork.html
Talvez você possa reduzir os MinSpareServers, StartServers etc., pois declarou que o site é de baixo tráfego. Você terá mais RAM livre para ser consumido pelos buffers do kernel para seus propósitos nefastos.
fonte
O linux usando toda a sua memória é normal, a memória que não está em uso, caso contrário, é redefinida como cache de disco. veja: linux comeu meu carneiro
Você pode verificar isso observando a saída de
free -m
e espera ver algo assim:a linha +/- buffers / cache é a que você deseja. Ele adiciona ram em cache gratuitamente para fornecer uma melhor imagem da quantidade de memória realmente disponível. Nesse caso, você deseja prestar atenção ao número 3416, não 101.
fonte