Chrome Dev Summit 2018 is happening now and streaming live on YouTube. Watch now.

Otimizar eficiência do conteúdo

Nossos aplicativos da Web continuam a crescer em escopo, ambição e funcionalidade. Isso é bom. No entanto, o avança implacável rumo a uma Web mais avançada gera outra tendência: a quantidade de dados baixada pelos aplicativos continua a crescer regularmente. Para oferecer um desempenho ideal, precisamos otimizar a entrega de todos os bytes.

Qual a aparência de um aplicativo da Web moderno? O HTTP Archive pode nos ajudar a responder essa pergunta. O projeto acompanha a forma como a Web é criada, rastreando periodicamente os sites mais populares (mais de 300.000 da lista de um milhão de sites mais importantes do Alexa) e registrando e agregando análises sobre número de recursos, tipos de conteúdo e outros metadados para cada destino individual.

Tendências do HTTP Archive

50º percentil 75º percentil 90º percentil
HTML 13 KB 26 KB 54 KB
Imagens 528 KB 1213 KB 2384 KB
JavaScript 207 KB 385 KB 587 KB
CSS 24 KB 53 KB 108 KB
Outros 282 KB 308 KB 353 KB
Total 1054 KB 1985 KB 3486 KB

Os dados acima capturam a tendência de crescimento do número de bytes baixados em destinos populares na Web entre janeiro de 2013 e janeiro de 2014. Naturalmente, nem todo site cresce com a mesma velocidade ou exige a mesma quantidade de dados. É por isso que destacamos os quartis diferentes na distribuição: 50º (mediana), 75º e 90º.

Um site na mediana, no início de 2014, consistia em 75 solicitações que acumulavam um total de até 1.054 KB de bytes transferidos. O número total de bytes (e solicitações) cresceu com um ritmo constante no ano anterior. Isso não deve ser uma grande surpresa, mas traz implicações de desempenho importantes. Sim, as velocidades da Internet estão aumentando, mas aumentam com taxas diferentes em países diferentes e muitos usuários ainda estão sujeitos e limites de dados e planos limitados de alto custo, particularmente em dispositivos móveis.

Ao contrário de seus equivalentes no desktop, os aplicativos da Web não exigem um processo de instalação separado, basta inserir o URL e começar a usar. Isso é um recurso importante da Web. No entanto, para que isso aconteça, muitas vezes temos de recuperar dezenas ou, algumas vezes, centenas de recursos diversificados, que podem chegar a megabytes de dados e devem ser recebidos juntos em centenas de milissegundos para facilitar a experiência da Web instantânea que todos queremos.

Alcançar essa experiência da Web instantânea, considerando esses requisitos, não é uma tarefa trivial. É por isso que a otimização da eficiência do conteúdo é crítica: eliminação de downloads desnecessários, otimização da codificação de transferência de cada recurso por meio de várias técnicas de compressão e aproveitamento de armazenamento em cache sempre que possível para eliminar downloads redundantes.