wanderlei wrote:
Ola gente..
Hau Wanderlei!
Estou rodando FC4 com Apache 2.0 + PHP 4.4 + MySQL 4.1 em um server
destinado somente como webserver..
Acontece que depois de um periodo de menos de 24 horas rodando os sites
ficam lentos demais, e a unica solução é reiniciar o apache.
Como a solução era a mais facil eu acabei colocando isos no cron e todos
os dias o apache se reinicia.
Não é a melhor solução... :P
Uma caracteristica que eu gosto do Linux é sempre um uptime gigantesco!
Mas tenho que saber o motivo disso acontecer.. porque o apache esta
consumindo tantos recursos assim que chega a deixar os sites lentos???
Sera que realmente é o Apache?? Se não for porque tudo fica normal
quando reinicio ele???
Primeiro de tudo, o Apache é muito, mas muito flexível. Geralmente as
configurações que vêm por padrão não refletem todo o potencial de
gerenciamento do mesmo. Saber dominar a ferramenta e entender como ela
funciona são essenciais para fazer os ajustes certos para o seu caso
específico.
Duas coisas que pensei que podem ajudar bastante no seu caso são os
ajustes dos processos filhos do Apache, e outro um cache de PHP. Este
primeiro você pode configurar no próprio httpd.conf do Apache. Vou te
dar um exemplo de uma configuração, mas lembre-se que você tem que sair
ajustando para o seu caso!
StartServers 8
MinSpareServers 8
MaxSpareServers 25
MaxClients 256
MaxRequestsPerChild 1500
Cada opção dessas tem um sentido. O que pode estar acontecendo é que seu
webserver pode estar recebendo muitas requisições, e por isso os
processos filhos ficam ocupados e demorando para serem liberados
(timeout), e aí as páginas ficam lentas. Cabe a você ver qual a sua
carga, fazer um pouco mais, e dar uma olhada no uso de memória dos
processos para ver se sua máquina não vai sobrecarregar :)
Procure na documentação do Apache sobre estas opções, que você vai
encontrar falando sobre o que é cada uma com detalhes.
Agora sobre o cache de PHP. Um cache de PHP é ótimo para as páginas
dinâmicas de um servidor web porque ele compila uma vez a página em PHP
e deixa armazenada. Caso a páginas sofra alterações, ele recompila, caso
não haja (o que é mais comum), ele não gasta memória/processamento
recompilando, e apenas usa o que está em cache. Isso melhora bastante o
desempenho das páginas PHP!
Eu rodo um de meus servidores o turck-mmcache, muito bom e fácil de
instalar, disponível em:
http://turck-mmcache.sourceforge.net/index_old.html
E é isso aí! Experimente e nos diga os resultados, compartilhe o que
você for fazendo com a gente!
Agradeço qualquer ajuda
Wanderlei
Abraço!
--
[]'s
Eitch
http://www.devin.com.br/eitch/
"Talk is cheap. Show me the code." - Linus Torvalds