DNS muito lento eu acho [fechado]

1

procurando conselhos sobre o meu novo VPS eu criei com a ajuda de um amigo. Tudo parece estar funcionando bem e as páginas carregam rapidamente após o carregamento da primeira página, o carregamento da primeira página leva até dez segundos, mesmo para sites simples baseados em texto.

Eu presumo que este é um problema baseado em DNS (ou poderia estar relacionado ao Apache?), como o IP está sendo resolvido, alguém poderia explicar se estou correto e como melhorar isso?

Domínios: bradfordians.co.uk, castlegardenspreschool.com & pezcuckow.com

Muito obrigado pelo seu conselho!

Alguém pode confirmar se está com a lentidão que estou descrevendo?

Saída de w:

17:24:40 up  6:22,  2 users,  load average: 0.64, 0.39, 0.45
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    130.88.177.204   16:44   38:00   0.02s  0.02s -bash
root     pts/1    130.88.177.204   17:24    0.00s  0.01s  0.00s w

Saída gratuita:

             total       used       free     shared    buffers     cached
Mem:          2048        320       1727          0          0          0
-/+ buffers/cache:        320       1727
Swap:            0          0          0

O começo do topo:

top - 17:26:46 up  6:25,  2 users,  load average: 0.21, 0.29, 0.41
Tasks:  81 total,   1 running,  80 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2097152k total,   328552k used,  1768600k free,        0k buffers
Swap:        0k total,        0k used,        0k free,        0k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                         
    1 root      18   0  2156  668  572 S  0.0  0.0   0:00.23 init                                                                             
 1350 mysql     15   0  125m  15m 4248 S  0.0  0.8   0:05.74 mysqld                                                                           
 1702 root      18   0 10008 2836 2292 S  0.0  0.1   0:00.02 sshd                                                                             
 1710 root      15   0  3844 1540 1248 S  0.0  0.1   0:00.02 bash                                                                             
 3580 root      18   0  3244  436  328 S  0.0  0.0   0:00.05 da-popb4smtp                                                                     
 3589 nobody    19   0  9136 1352  944 S  0.0  0.1   0:00.21 directadmin  

O servidor top while está com carga razoável:

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                         
 1350 mysql     15   0  126m  15m 4252 S 25.1  0.8   0:14.37 mysqld                                                                           
31859 apache    15   0 50436  41m 1988 S  0.3  2.0   0:00.85 httpd                                                                            
32146 apache    15   0 50464  41m 1972 S  0.3  2.0   0:00.75 httpd                                                                            
    1 root      18   0  2156  668  572 S  0.0  0.0   0:00.23 init                                                                             
 1702 root      18   0 10008 2836 2292 S  0.0  0.1   0:00.02 sshd     

Eu obtenho resultados de teste de impacto de carga muito estranhos, isso pode estar relacionado?

link

    
por Pez Cuckow 28.03.2011 / 17:48

3 respostas

2

Não acho que seja um problema de DNS ... O DNS Resolving foi muito rápido para mim.

ikbenbart$ dig  castlegardenspreschool.com

; <<>> DiG 9.6.0-APPLE-P2 <<>> castlegardenspreschool.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44600
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;castlegardenspreschool.com.    IN  A

;; ANSWER SECTION:
castlegardenspreschool.com. 14390 IN    A   78.129.132.155

;; Query time: 7 msec
;; SERVER: 192.168.220.51#53(192.168.220.51)
;; WHEN: Mon Mar 28 17:53:06 2011
;; MSG SIZE  rcvd: 60

A única coisa que chamou minha atenção foi a latência do ping:

ikbenbart$  ping 78.129.132.155
PING 78.129.132.155 (78.129.132.155): 56 data bytes
64 bytes from 78.129.132.155: icmp_seq=0 ttl=54 time=23.482 ms
64 bytes from 78.129.132.155: icmp_seq=1 ttl=54 time=21.030 ms
64 bytes from 78.129.132.155: icmp_seq=2 ttl=54 time=24.165 ms
64 bytes from 78.129.132.155: icmp_seq=3 ttl=54 time=22.786 ms
64 bytes from 78.129.132.155: icmp_seq=4 ttl=54 time=19.822 ms
64 bytes from 78.129.132.155: icmp_seq=5 ttl=54 time=21.464 ms
64 bytes from 78.129.132.155: icmp_seq=6 ttl=54 time=354.739 ms
64 bytes from 78.129.132.155: icmp_seq=7 ttl=54 time=21.032 ms
64 bytes from 78.129.132.155: icmp_seq=8 ttl=54 time=21.691 ms
64 bytes from 78.129.132.155: icmp_seq=9 ttl=54 time=20.745 ms
64 bytes from 78.129.132.155: icmp_seq=10 ttl=54 time=346.652 ms
64 bytes from 78.129.132.155: icmp_seq=11 ttl=54 time=21.422 ms
64 bytes from 78.129.132.155: icmp_seq=12 ttl=54 time=291.492 ms
64 bytes from 78.129.132.155: icmp_seq=13 ttl=54 time=622.309 ms
64 bytes from 78.129.132.155: icmp_seq=14 ttl=54 time=339.109 ms
64 bytes from 78.129.132.155: icmp_seq=15 ttl=54 time=567.751 ms
64 bytes from 78.129.132.155: icmp_seq=16 ttl=54 time=170.745 ms
64 bytes from 78.129.132.155: icmp_seq=17 ttl=54 time=465.188 ms

Há muitos picos lá ... Como é a carga no servidor? Tente executar o comando w e free -m e veja o que você obtém.

    
por 28.03.2011 / 17:57
1

Você pode adicionar nameserver 8.8.8.8 ao início de /etc/resolv.conf para ver se é um problema de DNS.

    
por 28.03.2011 / 17:54
1

Algumas coisas que notei e que você pode verificar:

  • A extensão Firebug do FireFox é muito útil no diagnóstico de problemas de velocidade / carregamento de páginas como este (veja na guia "Rede"). O YSlow é uma extensão relacionada que pode sugerir coisas para aumentar o desempenho (lembre-se de que nem todas as sugestões podem ser válidas para o seu site).
  • Das várias cargas de página de teste que eu fiz, nunca vi nenhum problema com o DNS.
  • Muitas de suas imagens são muito grandes. Considere tentar otimizá-los ou alterar formatos para alguns ganhos potencialmente significativos (ex: PNG para JPG).
  • Considere a redução de alguns dos seus arquivos JavaScript.
  • Considere desativar o mod_deflate pelo menos temporariamente para testes. Em servidores com CPUs lentas que estão significativamente sobrecarregadas, descobri que você pode obter um aumento perceptível de desempenho ao não compactar páginas. YMMV, mas não há mal em tentar.
  • Existem alguns erros 404 no site da sua pré-escola.
  • O site da pré-escola tinha os problemas de desempenho mais significativos, que podem ser devido ao número de arquivos necessários para carregar (35). Cada um desses arquivos usa um cliente Apache ao carregar. Se o seu Apache MaxClients for de apenas 50, algumas pessoas que carregarem sua página ao mesmo tempo podem fazer com que o 50 seja atingido muito rapidamente e causar atrasos ou atrasos nas conexões. Note que ter 35 arquivos / página não é ruim por si só, mas você precisa estar ciente de como isso afeta o desempenho do seu site e o carregamento da página.
  • Certifique-se de que o Apache MaxClients é alto o suficiente para armazenar o número de usuários simultâneos, mas não alto o suficiente para usar toda a sua memória RAM (especialmente porque você também está executando o MySQL).
  • Outra maneira de reduzir a carga do Apache mas aumentar a quantidade de arquivos que você pode servir é usar um servidor da Web de desempenho mais alto como lighttpd / nginx para todo o conteúdo estático (JavaScript, CSS, imagens) e permitir que o Apache sirva somente páginas PHP pesadas .
  • O uso de mod_expires pode ajudar a reduzir as recargas de conteúdo ao longo do tempo.
  • Verifique se você está usando algum tipo de cache de opcode do PHP (APC, eAccelerator).
  • Você pode usar o ab (ApacheBench) no seu servidor para avaliar o desempenho de seus sites. Eu usaria agora para obter uma linha de base e depois de cada tentativa de melhorar o desempenho para ver qual é o resultado. Teste uma variedade de tipos de arquivos (PHP, HTML, CSS, imagem, etc ...). O benchmarking também pode apontar você na direção do gargalo do seu site (CPU, RAM, IO, etc ...).

Eu começaria olhando a saída do módulo de status do Apache e verificaria se o problema está de fato relacionado ao aumento do número de clientes disponíveis. Se houver muitos clientes disponíveis, mas o site ainda estiver lento, pode haver outras questões mais sutis envolvidas.

    
por 28.03.2011 / 19:25