Como identificar as causas de um site lento em WordPress

Veja neste guia como identificar e resolver as causas da lentidão de um site em WordPress.

Ter um site rápido sempre foi importante, mas com o enrijecimento do Google com relação a este aspecto de classificação de páginas para as SERPs, com o aumento da concorrência e com o nível de exigência cada vez mais alto dos visitantes (e o bot é um tipo de visitante, dos mais exigentes), ter um site lento é algo inaceitável.

O que é um site rápido (ou um site lento)?

Talvez a resposta mais honesta para esta pergunta seja algo como “nenhum site é rápido o bastante”, em função das expectativas tanto dos donos de sites quanto dos visitantes.

Contudo, é praxe arbitrar-se que uma página que precise de mais de 2s (dois segundos) para carregar completamente é lenta. Logo, um site rápido é aquele cujas páginas carreguem totalmente em menos de dois segundos.

É importante salientar: a página deve carregar totalmente em menos de dois segundos, e isso inclui anúncios, imagens, e quaisquer penduricalhos extra.

Há quem arbitre tempos ainda abaixo de dois segundos para separar os rápidos dos lentos, mas pela nossa experiência acreditamos que não é necessário ser tão radical, pois é bastante difícil obter números assim tão baixos em termos práticos, principalmente quando é impossível abrir mão dos anúncios e de outros scripts externos — e insistir numa missão impossível só gera frustração e cansaço.

Backend e Frontend

Todo aplicativo na Internet tem dois “lados”, um que roda no servidor — o backend — e outro que roda no dispositivo de navegação do visitante — o frontend.

Para os visitante dos nossos sites (e reiteramos que o bot é um tipo de visitante) importa a velocidade do frontend, que na prática é o resultado dos processamentos que são efetuados no backend. De maneira resumida, requisições são feitas ao backend que as processa e devolve dados que são então utilizados ou exibidos no frontend.

Embora a regra geral possa sugerir que se o front estiver rápido então pode deixar o back se trumbicar para lá, devemos lembrar que se o back não entregar sua parte do trabalho rápido o suficiente o front também vai apresentar lentidão.

Em se tratando de WordPress, o backend (doravante apenas back para simplificar) é composto do servidor em si, com o Sistema Operacional e os serviços necessários ao funcionamento de um site, bem como do código do WordPress propriamente dito, seus plugins e tema ativos.

Já o front (também vamos simplificar o termo frontend daqui por diante) é composto do código HTML, CSS e JavaScript, das imagens e demais objetos que são entregues ao visitante para que a página possa ser “montada” e corretamente exibida; todo código que não seja executado diretamente no servidor (e sim no navegador) também faz parte do front.

Lentidão no backend: causas mais comuns

As causas mais comuns de lentidão no backend são:

  • servidor com hardware insuficiente para atender à demanda do site;
  • código mal escrito, ocasionando demandas absurdas com relação à real necessidade do site;
  • código que depende de resultados de sites externos: se o site externo cai ele derruba consigo todos os que dependem de seus serviços.

Quando o servidor está subdimensionado para a demanda não tem muito jeito, é necessário fazer um upgrade, contratar um servidor melhor. Porém, apenas uma parcela muito pequena dos casos de lentidão no back são causadas por hardware menor do que o necessário.

Bem mais comuns que os casos de hardware abaixo da necessidade são os casos de código que depende do resultado de algum processamento externo. Os exemplos mais comuns são os plugins otimizadores de imagens (totalmente desnecessários na PortoFácil: Mônica e a Otimização Avançada de Imagens) e os plugins e temas que exigem verificação de chaves de licença para funcionar: se o site externo cair, todos os “clientes” dele serão derrubados junto.

Sem dúvida, contudo, a causa mais comum de lentidão no back é a incidência de código mal feito exigindo tanto do servidor a ponto de travar a máquina toda. Exemplo disso são os plugins de estatística, de maneira geral (que não por acaso são vetados por nossos termos de serviço, como sendo plugins mal comportados).

Como identificar lentidão no backend

A maneira mais simples de diagnosticar problemas no back é analisando a carga do servidor. Os clientes da PortoFácil podem fazer isso facilmente usando a Mônica para Cliente, é só saber interpretar os gráficos. Ou então ainda mais fácil, é só pedir ajuda ao suporte técnico, que está sempre disponível e disposto a ajudar com este tipo de problema.

O primeiro passo sempre é desativar todos os plugins (menos os de cache), reverter o blog para um tema padrão, e comparar a velocidade do site, antes e depois desta medida. Se com o tema padrão e os plugins desativados a lentidão sumir, então será necessário reativar o tema e os plugins, um a um, repetindo a medida de velocidade, até encontrar o foco de problemas.

Não é raro que dois ou mais plugins estejam causando problema, razão pela qual todas as pessoas e empresas de bom senso recomendam não instalar plugins desnecessários no WordPress.

Lentidão no frontend: causas mais comuns

Já a lentidão no front pode ser causada por fatores externos ao blog em si (scripts de terceiros, normalmente as famosas “barras” de redes de sites ou propagandas) como fatores internos, como imagens não otimizadas para o uso a que se destinam, e scripts que interagem com o back de maneira a quebrar as funcionalidades dos caches.

Como identificar lentidão no frontend

Para identificar lentidão no front é necessário utilizar alguma ferramenta de medição que podem ser as ferramentas de rede do modo “desenvolvedor” do seu navegador favorito, ou sites especializados neste tipo de medida.

O nosso site favorito para medir velocidade de carregamento de páginas é o Pingdom Website Speed Test. Existem muitas alternativas, mas sugerimos que escolha um serviço e fique com ele, pois os resultados de um serviço de análise para o outro podem ser inconsistentes, o que gera muita frustração — principalmente para quem é um tanto obstinado por velocidade como nós.

O importante é que a ferramenta escolhida seja capaz de exibir o carregamento de cada objeto individual da página no que se chama de “visualização em cascata” — waterfall view.

Como exemplo (não muito bom, pois não dá para dizer que há lentidão em uma página que carrega totalmente em pouco mais de meio segundo) vamos analisar o waterfall view do carregamento de uma página aleatória do nosso blog (Cuidado com o Template do seu WordPress).

Como identificar as causas de um site lento em WordPress

Se analisarmos os dados no sentido vertical, do topo para o fundo da tabela, saberemos a ordem em que os objetos são carregados na página. Já no sentido horizontal, da esquerda para a direita, saberemos quando o navegador iniciou o carregamento de cada objeto e quando terminou (que é o que realmente importa).

Assim, para aproveitar a informação ao máximo precisamos analisar o gráfico na dimensão tempo (na horizontal), do fim para o começo. Normalmente também é o fim da visualização por ordem de carregamento (eixo vertical), mas não necessariamente seja uma regra.

Pelo exemplo acima podemos ver que os elementos que mais atrasam o carregamento da página (porque o instante final de seu carregamento está mais à direita) são vinculados ao Google Analytics: se pudéssemos viver sem o Google Analytics, a remoção do código de acompanhamento talvez já acelerasse em uns 20% o carregamento da página em análise.

Seguindo o mesmo raciocínio vemos que o segundo elemento mais lento da página é um script do plugin antispam que utilizamos no blog (o WPBruiser). Infelizmente, é outro plugin indispensável para nossa sanidade, haja vista a quantidade obscena de propaganda que recebemos em nossos formulários de contato quando o desativamos. Mas se não fosse assim, daria para ter um ganho bem considerável de velocidade de carregamento da página somente pela desativação do plugin.

Na prática, as coisas podem ser mais complicadas do que este exemplo. Vai ser comum, principalmente em sites que veiculam conteúdo automático de redes de anúncios, que existam dezenas ou centenas de requisições feitas aparentemente à revelia do responsável pelo blog: são os mecanismos de controle e de estatística dos anunciantes, das redes em si, ou do que quer que eles resolvam injetar na sua página. “De onde é que vem essa chamada?” — ou algo assim — vai ser o que você mais vai se ouvir perguntando o tempo inteiro.

Nesse momento é importante lembrar que cada um é responsável pelo seu blog, e que se não se tem o poder de impedir que trackers (os scripts de estatística e de rastreamento de conversão) sejam inseridos pelas redes de anúncios, o poder de remover os scripts desta ou daquela rede nunca nos é tirado.

Caberá a cada um saber da importância que cada anúncio tem para o blog, ou para o seu negócio como um todo, e remover o que puder ser removido para deixar o site rápido novamente.

Como acelerar o WordPress ao máximo

A maneira mais eficiente de se acelerar qualquer site ou blog é utilizar corretamente os caches.

Sugerimos que se utilize a Cloudflare em uma configuração agressiva (leia: Como tirar o máximo proveito da Cloudflare com seu WordPress), que se utilizem apenas os plugins realmente necessários, e que não se exagere nos anúncios.

Por fim, caso precise de ajuda para resolver o problema de lentidão de seu WordPress, basta entrar em contato. Nosso suporte técnico vai ficar feliz em poder ajudar.

 

Quero ser cliente da PortoFácil!Contato

Avalie este conteúdo!

Avaliação média: 4.83
Total de Votos: 6

Como identificar as causas de um site lento em WordPress

Compartilhe

Publicado por Janio Sarmento – 04 de junho de 2018