Ferramentas de cache agressivas para WordPress

Já pensou seu WordPress voando sem o menor medo?

Já pensou seu WordPress voando sem o menor medo?

Já falei várias vezes do 1BlogCacher, até hoje meu plugin favorito de cache para o WordPress. Entretanto, descobri dois outros plugins que — pelos testes que fiz — superam o 1BlogCacher na tarefa de tornar o WordPress um sistema robusto de publicação de conteúdo.

Uma das principais características do WordPress é a habilidade de separar conteúdo de layout de maneira magnífica, o que pode acabar custando, em blogs de alta visitação (leia-se: que tenha mais de meia dúzia de vistas diárias), uma dose extra de processamento. Cada requisição de página que é feita ao WordPress demanda o processamento de diversas consultas ao banco de dados, bem como o processamento desta informação.

Um sistema de cache tem por objetivo gerar uma cópia estática das páginas geradas dinamicamente pelo WordPress, de forma a reduzir a necessidade de processamento a apenas uma vez por página; quando a mesma página for novamente requisitada o sistema de cache pode apenas entregar o arquivo gerado da vez anterior, evitando assim todo o processamento para gerar uma página no WordPress.

Creio que o plugin de cache mais popular para o WordPress atualmente seja o WP-Super-Cache. Entre suas características estão o fato de nem sempre funcionar corretamente, mas quando funciona é um doce. Ele diminui muito a necessidade de processamento de um blog, mas devido à sua arquitetura o 1BlogCacher (link no primeiro parágrafo) proporciona ganhos maiores: em vez de gerar cache da página inteira que vai ser servida a um cliente, o WP-Super-Cache armazena apenas o texto do post, em linhas gerais, ocasionando a necessidade de processamento para os elementos do cabeçalho, das barras laterais e do rodapé da página. O 1BlogCacher, a seu turno, armazena integralmente as páginas geradas.

Em tempo: o WP-Super-Cache também pode servir páginas estáticas, mas isso requer uma etapa extra de configuração, que consiste em adicionar uma série de regras no arquivo .htaccess do blog, o que para muitos pode não ser uma tarefa trivial.

Cada widget requer configuração individual de seu cache.

Cada widget requer configuração individual de seu cache no WP-Widget-Cache.

Este comportamento do 1BlogCacher pode ser mimetizado utilizando-se o plugin WP-Widget-Cache, que justamente armazena em cache as operações de banco de dados das barras laterais. Entretanto, ele requer que cada widget das barras laterais seja configurado individualmente, a fim de definir o comportamento do cache. Em estruturas mais complexas pode ser algo beirando o inviável, sem contar que de vez em quando é necessário limpar manualmente o cache de widgets para que estes sejam exibidos corretamente após atualizar o site.

Por isto o 1BlogCacher acaba mostrando-se mais eficiente do que o plugin mais popular (que alguns provedores de hospedagem compartilhada enfiam goela abaixo de seus clientes). Mas nem por isso ele atende todas as necessidades de todos os blogueiros.

Por exemplo: muitos usuários gostam de oferecer uma versão “mobile” de seus sites, e uma das maneiras mais simples é utilizando o WordPress PDA & iPhone Plugin, que funciona de maneira muito simples: ele tenta identificar o navegador que está acessando o site, e caso identifique um dispositivo portátil ele troca o layout bonito e cheio de penduricalhos que muita gente curte para um muito mais simples, especificamente desenhado para telas pequenas.

Reduzindo-se as funcionalidades do WP-Super-Cache é possível torná-lo compatível com esse plugin; o 1BlogCacher não é compatível com o “WP PDA”, o que pode causar frustração a seus usuários.

Mas, naturalmente, nem tudo está perdido.

Pesquisando alternativas descobri, como falei no começo, um plugin de cache tão robusto quanto o 1BlogCacher e ainda mais flexível que o WP-Super-Cache: o Hyper Cache.

As principais características do Hyper Cache são as seguintes.

  • Todas as páginas armazenadas em cache são servidas sem acessar o banco de dados.
  • Suporta a compactação gzip, que economiza banda e acelera a carga das páginas ao entregar dados compactados ao navegador (e a compressão só ocorre na geração do cache).
  • Limpeza automática do cache.
  • Suporta o WP-PDA (pela criação de dois caches distintos).
  • Opção de configuração para contas com pouco espaço em disco.
  • Instalação e configuração facilitadas (não requer alteração de nenhum arquivo).

Finalmente, encontrei um outro plugin chamado Ask Apache Crazy Cache — se você é desenvolvedor e lê em Inglês, verifique os links no pé da página — que tem por objetivo gerar um cache de todas as páginas de um blog, de uma só vez. Ele não é compatível com o 1BlogCacher (ou melhor, nem toma conhecimento de sua existência), mas é capaz de interagir com o Hyper Cache, com o WP-Super-Cache e com o WP-Cache.

Se você é um pouco paranóico com relação à velocidade, instale o Ask Apache. Mas se você não tem muito espaço sobrando no disco, esqueça-o, ao menos até dar um upgrade em sua conta.

6 Comentários

  1. Gustavo D. Castro

    Não entendi, qual a vantagem de instalar o Ask Apache com o Hyper Cache?

    • Gerar o cache do site todo de uma vez só, bastante útil para momentos em que o Googlebot está indexando.

      • Gustavo D. Castro

        Janio, acho que valeria a pena rever seus conceitos em relação ao programa Ask Apache, tenho um site que posui 390 mil visitas unicas por mês e atualmente manteho ele em uma vps que possui 512 de memoria e não estava rodando o site com o cpanel, tive que instalar o hypercache nele e ele roda relativamente bem, ele diminuiu o uso de memoria e processador, porem os mesmos continuam sendo muito usados… resolvi testar esse plugin ask depois de ler o seu post e por inclivel que pareça ele fez almentar o meu processamento e o uso de memoria hoje o meu site saiu do ar rapidamente por gasto excessivo de memoria… Irei desinstalar ele hoje mesmo!

        • Gustavo.

          É melhor você rever os seus: você entendeu como funciona o Ask Apache, antes de achar que ele é panaceia?

          • Gustavo D. Castro

            Acho que eu realmente n entendi como ele funciona, mais acho que intendi o objetivo dele, o objetivo dele não é reduzir o processamento do host? Se é isso mesmo ele não funciona!

            • Sim, ele faz isso gerando todo o cache do site de uma só vez.

              Quando o cache está gerado, nem mesmo o primeiro acesso vai requerer todo o processamento do blog.

              Mas se você mandar ele gerar o cache do site inteiro em horário de pico, você vai estar cometendo suicídio (ainda mais num VPS com 512MB).

              Lógica pura. :)

              Janio

Deixe Seu Comentário

Powered by WP Hashcash

Clicky Web Analytics