wiki:Servicos/Cache

Version 2 (modified by acoutinho, 12 years ago) (diff)

--

Cache

Este documento tem por finalidade demonstrar a o uso de cache( servidor, php, http ).

Cache Servidor

Diversas ferramentas ( frameworks ) implementam a funcionalidade de cache de dados no servidor, hoje uma das mais utilizadas visto sua propriedade de escalabilidade entre servidores é mencache ( memory object caching system ), em segunda camada de cache muito utilizado fica o cache de códigos compilados, hoje já incorporado ao php e muito utilizado encontra-se o APC ( Alternativo PHP cache );

Cache via Http

O protocolo HTTP nos permite informar "instruções" para que proxy, gateway e browsers armazenem cache de "dados" sobre determinadas condições, aumentando significativamente a performace/esbalabilidade da aplicação.

Proposta de Implementação

A proposta aqui abordada levando em considerações as tecnologias e ferramentas hoje disponíveis, vem a servir como complemento a API Rest sendo desenvolvida a fim de aumentar a performance e escalabilidade. Para esta esta meta, é mostrada a seguinte arquitetura:

No image "sampleArquiteture.png" attached to cache
Figura 1: Exemplo demonstrativo da arquitetura

Conforme ilustrado acima:

HTTP: Conforme nos possibilita o protocolo HTTP podemos utilizar os recursos compartilhados ( proxy e gateway ) e recursos privados ( browser ) para cachear dados, sendo que quando o dado é encontrado sob posse deste recursos a resposta é quase que instantânea ao cliente. Os recursos compartilhados (proxy e gateway) cacheiam as informações somente quando o cabeçalho HTTP informar que o controle do cache é publico ( public ), sendo que quando o mesmo é usado deve cuidar o tipo de informação a se informar visto que o cache será de "domínio" público.

Attachments