15 de agosto de 2010

Utilizado cache com PHP


Situação: Um site, onde o menu é montado através de informações do banco, sendo este menu o mesmo para todos os visitantes do site. Para cada pessoa que acessar, o servidor vai executar uma consulta e trazer sempre as mesma informações, o mais interessante seria executar essa consulta apenas uma vez e deixar guardado o resultado, assim nos próximos processos bastaria pegar esse resultado e utilizar, fazendo assim uma consulta a menos.

Esta é a proposta do cache no sistema de cache, para PHP existe muitas formas de se fazer cache, a mais utilizada e promessa para vir no PHP 6 (ou 6.4 sendo que o pessoal não decidiu ainda isso) é o APC. É um modulo do php que por padrão não é vem instalado, para isso precisamos instalar o mesmo.


INSTALANDO

Para instalar basta buscar no seu gerenciador de pacotes por “php-apc “, se não for isso, deve ser algo muito parecido ;) . Pronto, basta este módulo para ter ativo a opção de cache no PHP.

No Windows ainda não descobri um modo simples, quando encontrar colocarei aqui. :)

UTILIZANDO

A utilização do seu projeto é muito simples, sendo feito o acesso ao cache por funções do PHP, existem várias funções, deixo abaixo as duas mais interessantes, e provavelmente as mais usadas.

apc_store(nome, valor);
Irá adicionar no cache o valor informado.

apc_fetch(nome);
Irá retornar o valor guardado com o nome informado, e false caso de algum erro.

Abaixo o link com a lista de todas funções:

Existem ainda configurações que podem ser feitas no php.ini para gerenciar tempo de cache entre outras informações, mas com o que trouxe até aqui já dá para brincar bastante com cache.

Att,
Guilherme Mar.