Há muitos arquivos de log no apachelog abrandando o servidor?

1

No meu servidor, eu tenho arquivos de log separados para todos os meus mais de 250 domínios.

Isso está mostrando o servidor inativo? Seria mais rápido ter apenas um arquivo de log que contenha todos os logs de acesso?

Atualização:
Vou tentar Desativar o registro do Apache completamente

    
por rubo77 30.04.2013 / 10:24

2 respostas

3

Na minha experiência, o sistema (sub) de registro Apache não vem com grande penalidade de desempenho da CPU, mesmo em servidores extremamente ocupados, vale a pena procurar por otimizações nesse caminho, então seus esforços de otimização provavelmente seriam mais recompensadores, se você Considere outros possíveis gargalos, como E / S e atraso de rede.

  • Primeiro, certifique-se de que HostNameLookups seja Off no seu arquivo httpd.conf (ou httpd-vhosts.conf ). Essa configuração, quando On , adiciona um atraso significativo suficiente ao resolver nomes DNS que pode compensar para desativá-lo em servidores ocupados. Se você precisar resolver nomes de DNS para fins estatísticos e de rastreamento, recomendo usar resolvedores de DNS baseados em hardware (roteador, switch, firewall) que tenham capacidade de armazenamento em cache do DNS e que possam, em sua maioria, fazer isso de forma assíncrona , em seguida, crie um link para esses registros ao analisar dados de tráfego.

  • Em segundo lugar, analise o desempenho de E / S do seu servidor e verifique se as gravações frequentes (o IIRC Apache realmente não lê nada a partir desses arquivos de log, apenas acrescenta a elas como um fluxo de arquivo) porcentagem de suas operações totais de I / O que seu servidor pode manipular. Em fusos ( HDD ), isso pode ser caro, então você pode considerar a possibilidade de espalhar esses registros para várias unidades físicas em vez de gravá-las em uma única unidade. Obviamente, se você estiver usando HDDs , alternando para SSDs é altamente recomendado, já que eles são capazes de IOPS muito mais elevados. Verifique também as sugestões de esta pergunta na falha do servidor .

  • Você também pode verificar se está apenas registrando solicitações de que realmente precisa. Frequentemente, as solicitações para alguns tipos de arquivo nem são necessárias ou podem ser movidas para outros logs mais simples que não consomem muito os recursos do sistema (ou seja, não exigem resolvedor de DNS, se você precisar desses dados registrados para outras solicitações). Tudo isso pode ser definido no arquivo de configuração do Apache e pode economizar um microssegundo ou dois em cada solicitação (que pode se acumular).

Outras sugestões podem ser balanceamento de carga, mover alguns dos arquivos acessados com mais frequência para outro local e criar sua própria CDN , e assim por diante, mas estes já estão fora do escopo da sua pergunta sobre o desempenho do arquivo de log do Apache.

    
por 30.04.2013 / 11:30
1

Sugiro que você verifique /server-status e sar -d -p . Se você vir L - Logging state e tiver alta latência de disco (consulte a coluna await do sar acima de dezesseis ms), provavelmente seria melhor gravar somente em um lugar no disco em vez de abrir centenas de arquivos. / p>     

por 18.05.2015 / 16:42