Resposta lenta do servidor web Apache antes de servir documentos, css, imagens

2

Eu tenho um site que está executando o WordPress (PHP e MySQL). Um site está respondendo muito lentamente a solicitações.

Quando olho para um inspetor da web no Safari, o problema não parece ser o tamanho dos arquivos.

link

Está demorando 5 segundos para entregar conteúdo. Quais são as medidas que posso tomar? eu sou novo para administração do servidor, e isso é apenas um servidor compartilhado. Eu não tenho controle total mas pode valer a pena tentar otimizar.

Eu tentei os comandos traceroute e ping , mas os comandos funcionam sem problemas.

    
por PJ. 27.01.2010 / 15:29

4 respostas

3

Você realmente precisa ter direitos de administrador para realizar qualquer tipo de solução de problemas real no servidor.

No entanto, se você quiser descobrir se é o seu código ou a falha do servidor ( heh ), existem algumas etapas que você pode seguir. Um deles é adicionar um temporizador ao seu código php para ver quanto tempo leva para executar no servidor. De aqui :

<!-- put this at the top of the page --> 

<?php 
  $mtime = microtime(); 
  $mtime = explode(' ', $mtime); 
  $mtime = $mtime[1] + $mtime[0]; 
  $starttime = $mtime; 
?> 

<!-- put other code and html in here --> 

<!-- put this code at the bottom of the page --> 
<?php 
  $mtime = microtime(); 
  $mtime = explode(" ", $mtime); 
  $mtime = $mtime[1] + $mtime[0]; 
  $endtime = $mtime; 
  $totaltime = ($endtime - $starttime); 
  echo 'This page was created in ' .$totaltime. ' seconds.'; 
?>

Usando isso, você pode ver se o servidor está realmente lento ou se está no final da conexão.

Se o servidor estiver lento, há várias etapas a serem seguidas, mas você precisa dos direitos de administrador para ir mais longe, especialmente porque está usando o wordpress, que está em centenas de milhares de servidores em todo o mundo e está bastante otimizado.

Só mais uma coisa é desativar os plugins e ativá-los um por um para ver se algum deles está causando lentidão.

    
por 27.01.2010 / 15:43
3

Provavelmente não tem nada a ver com os tamanhos dos arquivos. Se você estiver executando o wordpress, seus backlogs serão banco de dados e processador. Banco de dados para recuperar todas as informações sobre a aparência da página, o conteúdo, etc. E o processador para compilar todas essas coisas em um documento real e enviá-lo para fora.

Pode-se querer analisar as configurações de cache do Apache. Se certas páginas estão sendo solicitadas com frequência, não faz sentido criá-las repetidamente.

    
por 27.01.2010 / 15:38
1

Tente usar o Firefox e instale um plug-in chamado Firebug ( link ). Depois de configurá-lo, ative o painel 'net' e recarregue suas páginas. Isso mostrará o tempo necessário para cada parte da resposta do servidor, incluindo velocidades iniciais de conexão, tempo de download, atraso de resposta do servidor etc. Também é possível usar esse painel para verificar se você está armazenando em cache itens como JavaScript, Imagens e CSS.

Como você está em hospedagem compartilhada, você terá MUITO controle sobre a configuração do seu servidor, mas poderá acelerar as coisas de outras maneiras, prestando muita atenção ao que você está solicitando que o servidor faça.

GL! E se acostumar com o uso do Firebug, é um salva-vidas.

Uma última coisa, verifique se você está usando a versão mais atualizada do wordpress possível e não use muitos plugins. Cada bit de sobrecarga vai diminuir sua carga.

    
por 28.01.2010 / 20:23
1

Wordpress, como muitos CMS lá fora, é conhecido por ser bastante pesado, não me surpreende que um servidor compartilhado lhe dê atrasos como este para servir o primeiro byte.

A primeira coisa a fazer é ter certeza de que você tem um cache opcode disponível (php-apc é o "padrão"), sem que um Wordpress gere a homepage toda vez que um novo usuário o solicitar. Se o apc estiver instalado no servidor e você tiver uma maneira de configurá-lo, tente primeiro esta configuração:

apc.enabled=1
apc.shm_size=64
apc.max_file_size=3M
apc.ttl=7200
apc.user_ttl=7200
apc.stat_ctime=1

Em seguida, dê uma olhada nas estatísticas fornecidas pelo script apc.php incluído no pacote, isso ajudará você a definir esses valores de forma mais adequada.

A segunda coisa que vou fazer é usar um plugin de cache para o Wordpress como este: link

Ele renderizará o conteúdo na primeira solicitação e, em seguida, veiculará o conteúdo estático sempre que possível.

    
por 03.10.2011 / 12:31