uso de memória do httpd (Apache / 2.4.16 (Amazon))

2

Estou executando um servidor apache (configuração padrão, mod_php) em uma VM amazon linux com apenas 1G de RAM.

Existem dois tipos de aplicações php em execução: memória pesada, que são executadas não com tanta frequência (os processos httpd recebem 50 MB de tamanho cada) e os de memória leves, que são executados frequentemente.

Quando eu reinicio o apache e vejo o tamanho dos processos do httpd, é assim:

sudo service httpd restart
ps aux | grep 'httpd' | awk '{print $6/1024 " MB";}'
24.7266 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
2.00391 MB

Quando eu https: // apenas alguns dos aplicativos php de memória pesada (uma instalação do drupal 7) o mesmo comando gera isto:

24.7266 MB
14.9805 MB
47.0195 MB
18.6133 MB
18.5781 MB
18.582 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
14.9805 MB
2.05078 MB

O problema é que, mesmo quando o servidor fica ocioso, ele mantém alguns desses grandes processos de 50MB criados para atender às solicitações drupal de memória pesada. Eventualmente, quando eu obtenho muitos desses, ele usa quase toda a memória do servidor, então não posso usar o servidor para mais nada. Eu poderia estabelecer um limite mais estrito na quantidade de processos que o httpd pode criar para que houvesse menos processos de 50MB, mas isso puniria os aplicativos leves, pois agora há menos processos para lidar com suas solicitações:

  • Como posso criar mais memória de memória livre do apache?
  • Ou existe uma ferramenta melhor do que o apache?
por glennv 25.01.2016 / 12:58

1 resposta

1

Partes da minha resposta aqui podem ser relevantes. Nós rodamos o Apache em um ambiente com memória restrita e os processos do Apache costumavam usar gradualmente toda a memória disponível.

Curamos isso reduzindo a diretiva MaxConnectionsPerChild para 2500. Em nossos níveis de tráfego Isso significava que os processos filhos eram reciclados cerca de duas vezes por hora, liberando a memória que eles estavam usando.

Talvez você possa tentar isso.

    
por 25.01.2016 / 13:27