WP Rocket com alto consumo de recurso? Veja o que fazer
Olá mais uma vez, Kangaroozinho! Se em algum momento você já utilizou o plugin WP Rocket em seu WordPress, é bastante possível que já tenha visto em algum momento que o site começou a apresentar um consumo de recursos maior do que o esperado, não é mesmo?
Quando algo assim acontece, a carga gerada pelo plugin pode ocupar todos os recursos disponíveis em sua hospedagem, o que poderia levar até mesmo a uma instabilidade do site, com ele se tornando inacessível em casos mais extremos.
Bom, se você já passou por isso (ou mesmo caso queira entender um pouco mais para evitar de passar), mostraremos neste artigo o que leva esse problema a acontecer e o que você pode fazer para evitar isso. Vamos lá?
Sumário
- O funcionamento do plugin
- O problema
- O que fazer?
- Conclusão
Entendendo o WP Rocket
O WP Rocket é um ótimo plugin de cache e otimização de sites WordPress, sendo provavelmente o mais conhecido de seu nicho. Porém, existem funções do plugin que demandam esforço de processamento da hospedagem, e a intensidade e tempo desse esforço dependerá muito do porte de seu site, e um tanto dos recursos disponíveis em sua hospedagem.
A função de criação do cache é possivelmente o maior exemplo disso, em que uma página tem seu cache criado pelo site assim que essa página é visitada pela primeira vez. Na prática, se a página recebe sem acessos, o primeiro visitante irá criar carregar a página completa e iniciar a criação do cache, enquanto os demais carregarão diretamente o resultado já em cache.
Essa é a abordagem padrão de cache na maioria dos casos, mas o WP Rocket traz uma função que chamamos de Crawl (rastreamento). Essa funcionalidade faz com que o plugin simule o acesso a cada página, produto e artigo presente em seu site, permitindo já deixar o cache disponível antes mesmo de receber o primeiro visitante.
O problema do Crawl
Porém, como você já deve conseguir imaginar, quanto mais conteúdo seu site tiver (em páginas, posts, produtos, etc), mais simulações o servidor vai ter que fazer, gerando um volume maior de simulações e de tempo em que elas vão tomar para processar toda essa criação.
E isso se torna ainda mais grave para os sites que ativarem uma outra função, a de cache específico para dispositivos móveis. Nesse caso, o rastreamento terá o dobro do tamanho já que tanto as versões mobile quanto desktop serão mapeadas no processo.
Esse é exatamente o problema enfrentado em alguns sites que usam esse tipo de recurso de crawling, principalmente quando ele é executado para mapear e cachear todas as páginas em um mesmo momento.
O que fazer para resolver o problema do consumo de recurso
Para solucionar o problema, existem três possibilidades principais: a desativação do crawl, retirar itens do crawl, ou aumentar a disponibilidade de recursos da sua hospedagem. Porém, aqui precisamos fazer um importante adendo sobre o consumo do plugin: um upgrade de recursos nem sempre será suficiente para atender a essa demanda.
A depender do volume do site, até mesmo conceder mais recursos ao site não seria suficiente, já que a demanda de itens para processar ainda poderia ser tão grande que mesmo contar com mais recursos poderia não ser totalmente suficiente. Pensando nisso, precisamos voltar a nossa solução diretamente à função do Crawl, que são:
Desativação da função
A função de crawl é adicionada pelo que o plugin chama de Preload Cache, por isso inativar ela por completo deverá reduzir significativamente o consumo de recursos do plugin. Para fazer isso, abra o seu WP Admin e abra a o painel do WP Rocket.
No painel do plugin, navegue para a guia Preload, e então desmarque a opção Activate Preloading.
Como ponto negativo disso, temos apenas que o cache voltará a ser criado apenas quando uma determinada página receber o seu primeiro acesso.
Exclusão de itens
Uma outra forma que pode ajudar a conter o problema é através da configuração para que o Preload não faça o pré-carregamento de alguns links específicos. Dessa forma, você pode informar alguns URLs para que sejam evitados e, assim, reduzir a demanda final de processamento.
Para fazer isso, você pode tanto informar no campo Exclude URLs (logo abaixo da opção Activate Preloading) o link completo (incluindo seu domínio) como apenas o trecho da página correspondente. De toda forma, o plugin irá usar o trecho da página mesmo que seja informado o link completo.
Por exemplo: se você quer excluir o preload da página https://kangaroohost.com.br/blog/exemplo, você pode informar apenas /blog/exemplo e o plugin entenderá perfeitamente.
Como ponto negativo, essa configuração exige mais atenção do usuário e um esforço maior de configuração, mas que mesmo assim pode não necessariamente gerar um resultado tão notável.
Conclusão
A função de Preload cache do plugin é fantástica, mas como mostramos no decorrer do artigo ela pode acabar se tornando um problema à medida em que o site conta com uma quantidade maior de conteúdo.
Para esses casos, a solução viável que tende a trazer resultados realmente seria optar por desativar essa funcionalidade completamente, o que faria retornar o carregamento de cache das páginas individualmente no primeiro acesso de cada uma.
Esperamos que esse artigo possa ter ter ajudado e, se gostou do conteúdo, não deixe de continuar acompanhando nosso blog para mais dicas como essa. Nos vemos na próxima o/