As emocionantes aventuras de um sysadmin linux na procura pelo uptime perfeito!

Aprendendo a amar o histograma do varnish (varnishhist)

Posted: março 13th, 2011 | Author: coredump | Filed under: Linux e Open Source | Tags: , ,

Post rápido sobre uma ferramenta com má fama :)


Screenshot do varnishhistO comando varnishhist mostra um histograma dos requests sendo servidos pelo cache, desde o momento do varnish pegar o request do kernel até entregar a resposta ao kernel novamente.

É uma ferramenta interessante para ver como está a saúde de seu cache, mas meio chatinha de se entender de cara. Além disso existem opções na linha de comando para adicionar e remover informações. Por exemplo, pode-se usar o -b para checar apenas o status dos requests aos backends, e -c para checar apenas os requests dos clientes.

A grande questão que normalmente faz os iniciantes coçarem a cabeça é exatamente como interpretar o histograma. Não tema, é bem simples depois que se entende:

  • No topo esquerdo são mostradas a escala do gráfico e o número de requests sendo tratados no histograma. No caso do exemplo acima a escala é de 1:15, ou seja, cada símbolo | ou # representa 15 requests, e um total de 2000 requests já passaram desde que o programa iniciou.
  • Os símbolos | e # querem dizer respectivamente um cache hit e um cache miss. Trocando em miúdos: o request foi servido a partir do cache do varnish ou teve de ser buscado em algum backend.
  • A escala do eixo X é logarítmica, e da esquerda para a direita mostra o tempo que cada request demorou do início ao fim, em segundos. Então 1e0 quer dizer 1 segundo de demora, enquanto 1e-3 quer dizer 0.001 segundos (1 milisegundo).

Então, quanto mais para a esquerda estiverem os requests, mais rápido eles estão sendo servidos. Um grande número de # significa que seu cache não está fazendo o que devia (cachear!). O histograma bom é aquele parecido com o do exemplo: a maioria dos requests está no canto esquerdo do gráfico (rápidos) e são hits. É normal que hits sejam rápidos e misses sejam lentos, mas dependendo da velocidade dos backends você pode acabar com muitos misses no lado esquerdo do histograma.

intel!

Compartilhe:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • Slashdot
  • StumbleUpon
  • Technorati
  • TwitThis
  • Identi.ca
  • Twitter

Posts relacionados:

  1. Guia sobre o Exim Coloquei hoje no ar o guia sobre o Exim. Está...
  2. Cluster corosync/pacemaker para balanceamento web (nginx, varnish ou apache) (or how to replace wackamole with heartbeat!) Objetivo: Construir um cluster com N máquinas rodando nginx e varnish para...
  3. Meus Projetos Parados Costumo plagiar meu amigo Bruno lá de Divinópolis: “Eu tenho...
  4. Finalmente Depois de longas semanas alguém apareceu com um hack para...
  5. E depois perguntam… Máquina aqui de casa, Windows XP, usada apenas para checar...

No Comments »

Leave a Reply