Blog Agility

Como melhorar o desempenho do seu site

Como melhorar o desempenho do seu site

“A requisição HTTP mais rápida é aquela que NÃO é realizada”

Muitas pessoas têm alguma dificuldade em analisar gráficos e procurar tendências ou correlacionamentos entre dados ou eventos. Nunca me dediquei a estudar o assunto a fundo, nem sou um especialista nesta área, mas de vez em quando alguns dados saltam aos olhos.

Eu gosto de abrir alguns sites que coletam informações e permitem comparativos, dentre eles, o HTTP Archive (http://httparchive.org/index.php), que realiza periodicamente diversas coletas em sites públicos e apresenta os dados destas pesquisas.

Analisando alguns comparativos entre fevereiro/2012 e fevereiro/2013, conseguimos perceber algumas tendências muito interessantes.

Total de Requisições e Volume Trafegado

A primeira diz respeito à quantidade total de requisições e volume de dados transferidos: um acréscimo de 31% no volume total, enquanto a quantidade de requisições subiu apenas 2%:

rodrigo-cache-total_transfer2013

Ou seja, temos, na média, dados mais pesados sendo transferidos nas mesmas requisições.

Outra informação interessante destes gráficos é que, a maior parte do acréscimo se deu por causa de imagens, como demonstrado abaixo (gráficos de fev/2012 e fev/2013):

rodrigo-cache-averagebytes_2013a

Analisando outro gráfico do HTTP Archive, uma situação que me intriga é a grande quantidade de objetos sem a especificação de Cache:

rodrigo-cache-uncacheable_2013

Um resumo interessante desse gráfico (e de outros pesquisados):

  • 56% dos recursos não especificam o “max-age”
  • 46% dos recursos sem o “max-age” permaneceram inalterados depois de 2 semanas
  • Alguns dos recursos mais acessados na web são “cacheados” por apenas uma hora ou duas

Talvez seja um pouco complicado avançar na questão de cache porque o problema não pertence a um único grupo de profissionais – a responsabilidade abrange donos de websites, provedores de conteúdo e desenvolvedores. Mas uma coisa é certa. Temos que melhorar muito no que tange o cache e outras tecnologias de aceleração de conteúdo.

Como melhorar essa situação?

Uma das formas que recomendamos para resolver este problema é usar soluções que consigam usar o navegador do usuário como parte integrante à infraestrutura, assegurando o melhor uso da largura da banda e evitar que dados repetidos ou duplicados sejam trafegados pelo link. Isso acelera a primeira visita e as seguintes aos sites de portal, CRM, treinamento e comércio eletrônico. O resultado é uma redução significativa do tempo de download, do uso da banda e dos custos de se usar as aplicações web corporativas implementadas em escritórios remotos e para funcionários móveis.

Com algumas soluções que já estudamos, conseguimos alguns resultados como os mostrados no gráfico abaixo:

rodrigo-cache-wa_results