Introdução e desafios do desempenho na web

Fevereiro 2017


Quais são os desafios na Web

Não é uma disciplina recente mas foi, por muito tempo, reservada a alguns especialistas. No entanto, as implicações que você vai descobrir abaixo são muito importantes. Para compreender o interesse, basta questionar-se sobre quando foi a última vez que você se encontrou diante de um site, frustrado e irritado com sua lentidão?



Mesmo tendo boas conexões de internet com velocidades cada vez mais altas, incluindo nos dispositivos móveis com 4G que se democratiza, nós nos defrontamos diariamente com a espera diante de uma página web. É deste problema que vamos falar aqui: por que a web ainda é tão lenta? Quais são os impactos econômicos para um site? O que podemos fazer para melhorar? A otimização do tempo de carregamento é uma disciplina técnica, mas o desempenho da web é algo maior, uma verdadeira cultura, que vai além do domínio tecnológico. Vamos, então, descobrir porque é essencial ter um site rápido.

Os desafios do tempo de carregamento na Web

Como mencionamos acima, esperar na frente de uma página da web é algo frustrante. Depois de um segundo, temos plena consciência de estarmos esperando.

É muito provável que, na sua vida de todos os dias, você já tenha desistido de alguma coisa, porque ela exigia muito tempo de espera. A principal diferença na internet é que nós estamos em um contexto de rapidez, face a uma enorme quantidade de informações, onde existem dezenas de alternativas, como um simples clique de mouse, ou um toque de dedo. Aqui estão alguns exemplos para ilustrar os diferentes impactos do tempo de carregamento em vários domínios, que mostram como isto pode contar se você tiver um objetivo econômico por trás de um website.

Um site rápido vende mais

O site de e-commerce AutoAnything (venda de peças de automóvel online) diminuiu 50% do tempo de carregamento de suas páginas e aumentou em 11% a cesta média de seus clientes.

Site lento acarreta a insatisfação do usuário

Um estudo sobre sites de e-commerce mostraram que, um segundo a mais no carregamento dos sites visitados, reduzia em 16% a satisfação dos usuários. Note também, que a lentidão excessiva chega até a inquietar os usuários quanto à segurança do site visitado!

Velocidade e SEO

Em 2010, o Google avisou que penalizaria 1% dos sites devido à sua lentidão excessiva. Atualmente, é sobretudo o tempo de resposta do servidor (e não mais o tempo que a página web leva para aparecer) que vai impactar diretamente o Google. Mas algo está prestes a mudar e podemos constatar isso no artigo de Garry Illes (em Inglês) sobre a importância de se considerar o tempo de carregamento para os resultados móveis do motor de busca.

Se você quiser saber mais, veja neste artigo exemplos adicionais sobre a importância do tempo de carregamento, categorizados em função dos diferentes centros de interesse que você possa ter.

Os parâmetros que entram em jogo no desempenho da Web

O desempenho da Web envolve muitas noções diferentes. Veja alguns elementos a serem considerados em relação à velocidade de carregamento de um site:


A conexão do usuário:

Como falamos na introdução, nos últimos anos, as conexões melhoraram bastante. No entanto, estamos longe de estarmos todos no mesmo nível. Além disso, embora as taxas oferecidas pela fibra ótica ou pela conexão 4G sejam incomparáveis com as que tínhamos há cerca de 10 anos, resta um ponto importante: a latência. É um prazo incompressível mas, necessário, para que os dados transitem de um ponto A (ex: a sua casa) para um ponto B (ex: o servidor web). Hoje, este prazo tem um impacto importante sobre o carregamento das páginas da web, pois muitas idas e vindas entre A e B são necessárias, para exibir uma única página!

A localização do usuário:

Acontece que esta latência é muito influenciada pela distância entre A e B. A rede Internet é rápida porém, longe de ser instantânea! Na verdade, é uma rede complexa, onde são necessários direcionamentos (roteamento) para levar as informações ao seu destino e, nos quais, diferentes filtros estão presentes. Os sinais luminosos ou elétricos são extremamente rápidos mas, impactados por diversas operações que diminuem as comunicações. Quanto maior for a distância entre o usuário e a localização dos elementos do website, mais a velocidade será afetada.

O tempo de resposta do servidor:

Este é o ponto de partida do carregamento de uma página da web. O servidor vai reenviar uma resposta em HTML, o que permitirá ao navegador construir a página a ser exibida e recuperar todas as dependências necessárias (imagens, javascript, etc). Esse tempo é, na grande maioria dos casos, uma pequena parte do tempo de carregamento da página. No entanto, alguns erros de desenvolvimento podem causar uma explosão desse tempo de resposta e, consequentemente, afetar drasticamente o tempo necessário para abrir uma página web para o usuário.

A construção do front-end, e as melhores práticas associadas:

O front-end corresponde ao conjunto de elementos de uma página web que são baixados pelo navegador e, com os quais, ela pode interagir (HTML, CSS, JavaScript, etc). Essa é a parte "visível" do site para o usuário. Ao eliminarmos os problemas de tempo de resposta do servidor, é neste front-end que teremos de trabalhar para otimizar o tempo de carregamento de um site, e levar em conta as limitações técnicas nas quais os usuários de Internet evoluem (taxa de transferência, latência, etc) para minimizar o impacto.

Existem algumas ferramentas para analisar um site internet e identificar as boas práticas que podem ser aplicadas, tais como Page Speed ou YSlow. Outros começam a aparecer, como o Darboost e o Yellow Lab Tools

Veja também

Artigo original publicado por . Tradução feita por ninha25. Última modificação: 28 de julho de 2015 às 06:46 por ninha25.
Este documento, intitulado 'Introdução e desafios do desempenho na web', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.