Uso de memória inesperado após o SSL no Apache

2

Recentemente, convertemos nosso site para https . Após a instalação e teste do certificado, criamos um redirecionamento 301 no .htaccess. As coisas correram bem por alguns dias com pouco impacto aparente no desempenho.

Dia 3 ou 4, encontramos problemas com OOM . Nos próximos dias, veríamos o mesmo padrão repetido. Por volta das 9h15 (quando nosso servidor começa a ver uma carga maior), nosso uso de memória aumentaria e, muitas vezes, faria com que o servidor eliminasse o memcached ou o mysql. É difícil entender porque veríamos um uso muito maior (por Google Analytics) no final do dia, sem nenhum problema.

Server Version: Apache/2.4.25 (Unix) OpenSSL/1.0.1e-fips mod_bwlimited/1.4 PHP/5.5.38
Server MPM: prefork
Start servers: 10
Min spare servers: 5
server limit: 256
max request workers: 256
max connections per child: 2500*
keep alive: on
keep alive timeout: 1

Reduzi as conexões máximas porque percebemos que o uso de mem por criança parecia aumentar significativamente durante o período do problema. Por htop RES para cada criança é geralmente 25000k. Durante o estresse é mais de 50000k. Então eu pensei que eu queria aumentar a freqüência de novos processos filhos sendo gerados. Não está claro se isso fez alguma diferença.

Verificamos todos os trabalhos em cron para garantir que nada de especial esteja programado para o período de estresse.

A adição de ssl gera significativamente mais uso de mem para apache ? Por que só neste momento em particular - nem mesmo em qualquer lugar perto do nosso período mais movimentado (embora possa ser o tempo que o uso cresce mais).

Atualizar. Removemos o redirecionamento 301 para tentar determinar definitivamente se essa era a causa. Com certeza o servidor lidou com as pressas das 9:30 da manhã de hoje sem mostrar a menor memória ou a tensão da CPU. Portanto, ainda temos https ativado - mas não temos certeza de como nossas cargas de trabalho http vs https diferem de atm.

Atualizar 2. reescreva conforme solicitado

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R,L]

(originalmente tinha redirecionamento 301 - mas decolou resolvendo problema de memória)

    
por williamk 11.04.2017 / 17:42

1 resposta

0

William, https definitivamente aumentará a sobrecarga na forma como o Apache atende as páginas da Web, por isso perguntei se você tinha habilitado o http / 2 porque o http / 2 é muito mais eficiente no processamento de solicitações https ... muito mais rápido também, com menos personalização de desempenho necessária.

Definitivamente olhe para isso.

    
por 13.04.2017 / 13:09