Tempo de solicitação alto

1

Eu tenho tempo de execução alto de solicitação HTTP (ex. 42KB em 13s).

Estou usando o haproxy para carregar o tráfego de saldo. Os arquivos estáticos são server by lighttpd atrás do acelerador de verniz. Então ... deve ser servido abaixo da velocidade da luz: P

link

Pesquisa de DNS demorada: pic1

Long receba: pic2

Download simulativo: pic3

Eu uso o GoogleDNS. Os servidores estão nos EUA. Em primeiro lugar, adicionei IPs a / etc / hosts para omitir a consulta de DNS. Em segundo lugar eu migrei estática para a máquina separada omitindo haproxy. Dessa forma, ele está se conectando diretamente ao verniz. O tráfego não é grande, porque é só desenvolvimento, mas acontece também na produção.

link

Após as alterações: pic4

É um pouco melhor, mas ainda é sloooooow ...

    
por csgwro 02.03.2011 / 01:50

2 respostas

1

Antes de mais nada, você deve verificar de onde o Varnish está servindo a imagem. Está fazendo o cache da imagem ou usando o backend a cada vez?

Você pode verificar isso de várias maneiras:

  1. Use a opção de linha de comando para rastrear a VCL e ver exatamente o que a solicitação está fazendo ( -p vcl_trace=true se minha memória funcionar bem.
  2. Use varnishlog para assistir a alguma solicitação para a imagem e ver o que está acontecendo (se estiver sendo veiculada do cache, etc). Você deve usar isto se você definir o vcl_trace .
  3. Adicione um cabeçalho à entrega da resposta e examine-o no navegador para ver se foi um sucesso ou um fracasso.

Assim:

sub vcl_deliver {
   if (obj.hits > 0) {
                set resp.http.X-Cache = "HIT";
                unset resp.http.cookie;
        } else {
                set resp.http.X-Cache = "MISS";
        }
}

Ele adicionará um cabeçalho X-cache em cada solicitação que o Varnish publica. Depois de verificar se o verniz está, de fato, fazendo o cache corretamente, podemos procurar o motivo do longo tempo para responder, mas suponho que observar as solicitações no rastreio lhe dará algumas dicas.

    
por 02.03.2011 / 02:39
0

Você pode ser atingido por Buffer Bloat .

    
por 02.03.2011 / 10:13