Conhecendo o Cache

Tudo bem galera? Recentemente comecei um estudo sobre a API de Caching do Drupal e irei dividir com vocês o conhecimento adquirido, tudo isso de graça, hein! rsrsr

Irei criar uma sequência de posts sobre esse assunto. Nesse primeiro post, será abordado a parte teórica da coisa, como por exemplo: conceito de cache; conhecendo o fluxo de cache para usuário anônimo e algumas funções que iremos utilizar no decorrer dos nossos posts.

Bom, sem mais delogas, vamos ao conceito desse negócio. Prometo que vai ser rapidinho e nem vai doer.

De acordo com nosso amigo Wikipédia temos a seguinte definição de cache:

"Na área da computação, cache é um dispositivo de acesso rápido, interno a um sistema, que serve de intermediário entre um operador de um processo e o dispositivo de armazenamento ao qual esse operador acede. A vantagem principal na utilização de um cache consiste em evitar o acesso ao dispositivo de armazenamento - que pode ser demorado, armazenando os dados em meios de acesso mais rápidos."

Legal, mas e agora, o que isso quer dizer?

Quer dizer que sempre teremos um cara da geração Z mais imediatistas (um Browser ou qualquer outro cliente) solicitando informações para um outro cara da geração X menos apressado (BD ou sistema de arquivo). Opa, temos um problema! A demora na entrega dos dados.

Para resolver essa divergência entre requisição e entrega de dados, teremos um terceiro indivíduo. O cara da geração Y, que veio para facilitar o convívio entre esses dois extremos: consumidores de informação e provedores de informção.

Galera, conseguiram capitar a ideia?

Ok, agora já temos uma certa noção sobre o assunto. Vamos então drupalizar a coisa. A imagem asseguir mostra o fluxo para carregar ou não uma página do cache, para usuários anônimos.

Fluxo de cache

A imagem acima foi retirada e traduzida do Livro Pro Drupal 7 Development.

No fluxograma acima, o arquivo settings.php é o primeiro a ser verificado. Nele podemos especificar alguns caches a serem utilizados, tais como:

  • Memcached
  • MongoDB
  • Redis
  • E outros manipuladores de cache.

Após verificar se o usuário está deslogado e se o cache está ativo, é feito o processo de Bootstrap e depois a página é carregada.

 

No processo acima o Bootstrap faz uma chamada na seguinte função _drupal_bootstrap_page_cache() que é onde acontece todo o processo do fluxograma.

Quanta teoria hein! Guenta ai falta pouco.

Legal, conhecemos um pouco do processo de cache do Drupal. Agora veremos algumas funções de manipulação do cache.

Veremos outras funções e constantes que serão abordadas no decorrer dos nossos posts. Onde utilizaremos as funções acima, a manipulação do cache com alguns módulos e cache de blocos e páginas.

 

Galera vamos recapitular o que foi visto até o momento.

  • Conceito de cache. Com as gerações X,Y e Z.
  • Fluxo de cache para usuário anônimo. O Bootstrap chama a função _drupal_bootstrap_page_cache() onde é realizado o fluxo de cache.
  • Funções da API de Cache.

Bom galera, para não esticar muito o post, vamos finalizar por aqui. Espero que esse post tenha agregado conhecimento a vocês. Qualquer dúvida, sugestão ou crítica é só deixar um comentário. Irei responder sem pestanejar.

 

Até o próximo post! ;)

Como criar um módulo", conforme falei na parte 2, vou abordar agora como adicionar configurações específicas no módulo. Essas configurações são formulários em duas páginas diferentes. Em uma página, é pra escolher o comportamento padrão de cada vez que rodar o meu custom_deploy. A segunda, será onde vou rodar o custom_deploy, que irá se comportar de acordo o que defini na primeira página." data-share-imageurl="">