Arquivo

Como deixar seu blog mais rápido com Cache

2, julho, 2008

Muita gente tem medo de colocar no seu blog um sistema de cache. Alguns justificam que não há necessidade, que o blog está respondendo num tempo satisfatório, ou que a hospedagem é boa, ou ainda que é muito complicado tecnicamente fazê-lo funcionar. Eu venho nesta pequena série de posts tentar desmistificar essa história toda que é fazer cache em blog.

O que é cache? Qual sua função?

Diz a Wikipedia: “Uma definição mais simples de cache poderia ser: uma área de armazenamento temporária onde os dados freqüentemente acedidos são armazenados para acesso rápido.” Simples assim, oras. Não vamos complicar o que é simples. Mas vamos procurar entender…

Por quê deixa o blog mais rápido?

Quando você acessa um site estático, ou seja, aquelas páginas desenvolvidas em HTML puro e com algumas imagens adicionadas, ele logo é disponibilizado na sua tela. São arquivos que já estão prontos, não demandam tanto processamento, não precisa ser gerado. Entretanto, quando você acessa um site dinâmico, desenvolvido com tecnologias como PHP, ASP ou JSP, por exemplo, ele precisa consultar um banco de dados que armazena e gerencia as informações que devem ser exibidas naquele instante. É o caso do seu blog: toda vez que alguém entra nele, ele faz várias consultas na sua base de dados para saber quais os posts mais novos, ou quando entrar num post específico, quais os comentários para aqueles posts, tags, categoria, imagens etc.. Estas operações, apesar de invisíveis, consomem recursos da máquina onde seu blog está hospedado, ela precisa processar todas as informações de acordo com aquilo que você solicitou. Isso pode demorar.

Pra isso existe o cache: ele torna estático o que é dinâmico, grosso modo. Quando alguém entra no seu blog e procura aquele seu post famoso por conter fotos da Mulher Melancia, por exemplo, ele processa todas as informações, diz onde estão as imagens, quais são as tags adicionadas, qual categoria ele pertence e gera um arquivo HTML desse resultado e armazena em um diretório específico. Junto com ele, um outro arquivo que funciona como uma chave também é criado. Quando o próximo leitor entrar no seu blog e procurar pelo mesmo post, o sistema de cache verifica se o que ele procura já está gravado e exibe o HTML, texto puro, mais rápido. Poupa tempo do leitor, poupa tempo de processamento do servidor, libera memória para operações mais importantes. O seu visitante fica feliz, você fica feliz, seu administrador fica feliz.

Certo, mas quais são os plugins indicados para fazer cache e como eu faço?

Isso nós vamos ver na sequência dessa pequena série que inicia agora. Assine o fide do Viamão Lotado e acompanhe de camarote!

Daniel Becher Séries/Tutoriais, WordPress , ,

Cache em blogs: qual plugin usar?

3, julho, 2008

Hoje nós temos disponíveis três grandes plugins que fazem este trabalho. O primeiro que surgiu e o mais usado é o WP-Cache. Funciona muito bem, por sinal, o plugin desenvolvido por Ricardo Galli. Entretanto, este nobre rapaz o descontinuou. Aí o sr. Donncha O Caoimh, um irlandês que desenvolveu outros plugins, inclusive a plataforma MU do WordPress, deu de mão no plugin do Ricardo e fez um “fork” (continou o desenvolvimento) e criou então o WP-SuperCache.

Outra opção é o XCache, que não pegou muito entre os blogueiros brasileiros que adotam esta prática. Existe muito pouca referência dele nas bandas de cá.

Entretanto, recentemente entrou em cena o 1st Blog Cache. Eu fiquei conhecendo através do blog da minha hospedagem da sua existência e fui incentivado a usá-lo, uma vez que o benefício é bilateral: o administrador do servidor consegue manter seu recurso de processamento livre para trabalhos mais nobres, e eu consigo agradar meu leitor fazendo-o esperar menos para o carregamento do site.

Mas por quê o 1st Blog Cache? Por quê não o WP-SuperCache?

Segundo o Janio, o WP-Cache reduz bastante o uso do banco de dados, mas não é totalmente descartado o carregamento do sistema WordPress por inteiro toda vez que uma página é requerida. Em contra-partida, “no caso do 1BlogCacher o repositório fica em um diretório “publicável” do servidor, dentro do diretório raiz do WordPress, e utilizando regras de reescrita de URL (URL Rewriting) estas páginas é que são entregues no navegador do visitante, (…)“. Se são entregues páginas para o navegador do visitante, páginas estáticas, nada de banco de dados, certo?

Quanto eu pago para usar a nona maravilha do mundo? (já que a oitava é o WordPress)

Você está preparado para isso? Você tem certeza que quer ler isso? Seu coração é forte? Quer pedir ajuda aos universitários?

Nada. É grátis. Você pode baixá-la e instalar por conta em risco, seguindo um Read Me bem completo em inglês que vem junto com o pacote. Mas se você for paciente, o próximo e último post da série é um pequeno tutorial de como instalar e configurar o plugin de cache.

Daniel Becher Plugins, WordPress , ,

1st Blog Cacher: Instalando, configurando e usando

3, julho, 2008

Agora que já entendemos pra que serve e porque vamos utilizar o plugin 1st Blog Cacher, está na hora de colocarmos a mão na massa. Você pode baixar o plugin clicando aqui. No pacote do plugin virão dois arquivos. Ao contrário dos plugins normais, estes dois arquivos não ficarão juntos na pasta de plugins do seu WordPress.

Instalando e configurando

  1. Acesse a sua conta de hospedagem através do FTP. Na raíz do seu WordPress, você precisa criar um diretório (aquele diretório publicável, lembram?) que servirá para armazenar os arquivos em cache. O nome dele necessariamente precisa ser wp-cache. Além disso, você precisa setar as permissões desse diretório para 777.
  2. Descompacte os dois arquivos que vieram no arquivo.zip do plugin. Dentro da pasta wp-content/plugins, você vai subir o arquivo 1blogcacher2.0.php. Já o advanced-cache.php ficará um nível de diretório acima, na raíz do wp-content.
  3. Agora vamos editar o arquivo config.php, localizado na raíz do WordPress. É necessário acrescentar a linha define(‘WP_CACHE’, true);
  4. Agora você vai acessar o WP-Admin do seu blog (área de administração do WordPress), ir na sessão Plugins (extensões) e ativar o recém instalado 1st Blog Cacher. Feito!

Doeu alguma coisa?

Exibindo alterações imediatamente (ou limpando o cache)

No menu Settings do wp-admin, encontraremos uma opção para o plugin que acabamos de instalar. Lá você vai encontrar um resumo das configurações do arquivo advanced-cache.php, que é o arquivo de configuração do plugin. Logo abaixo, os seguintes botões:

Estes dois botões serão muito importantes no caso de você fazer alguma alteração no tema ou num post. Caso não queira experar os 3600 segundos (1h), estipulados por padrão de “fábrica” no arquivo advanced-cache.php e exibidos acima, você clica em “Remove all files” que quando recarregar a página em questão ela estará alterada. Afinal, o cache consiste nisso, em criar uma versão estática daquilo que é dinâmico, como já disse na sequência da série. Então se houver alguma alteração, até que você limpe o cache do seu WordPress, ou aguarde o tempo de expiração dos arquivos, as alterações não serão exibidas.

Exceções

Nem tudo pode entrar no cache. Por isso, também no arquivo advanced-cache.php você poderá setar quais arquivos que você não quer que fiquem “estáticos”. Por exemplo, os arquivos que fazem o feed funcionar, os comentários etc. Por padrão, temos: wp-atom.php, wp-comments-popup.php, wp-commentsrss2.php, wp-links-opml.php, wp-locations.php, wp-rdf.php, wp-rss.php, wp-rss2.php. Se houver necessidade de acrescentar mais algum, o faça com cuidado, pra não colocar algum arquivo errado e o seu cache ficar subutilizado.

E os robôs de busca, verão meu cache?

Outra preocupação dos usuários é se os motores de busca serão insensíveis às atualizações do blog. Não. Assim como há exceções para arquivos do WordPress, o 1st Blog Cache identifica os spiders e os faz ver a versão dinâmica do seu blog. No arquivo de configuração também é possível remover e adicionar strings para rejeitar as aranhas, na opção OBC_REJECTED_USER_AGENTS.

Usando

Como dizem os gaúchos, “feito o carreto!”. Agora é usar e ser feliz com seu blog muito mais rápido e versátil.

Daniel Becher Plugins, Séries/Tutoriais, WordPress , , , , ,