Falando de uma forma genérica, o termo cache refere-se a uma de espécie de repositório. Poderemos comparar a um armazém militar onde se reúnem armas, alimentos e outros suprimentos necessários para avançar com uma missão.
No que respeita à informática e programação, estes “suprimentos” são códigos, scripts e conteúdos. No último caso, por vezes é algo mais específico, os “assets”, isto é, textos, dados estatísticos, ficheiros multimédia, hiperligações, entre outros.
Diferença entre Cache e outros repositórios
O principal propósito da Cache é acelerar o processo de recuperação de recursos de uma página web, diminuindo o tempo de carregamento da mesma. Outra característica relevante da Cache é assegurar a existência de dados actualizados.
Para além da Cache há igualmente outros repositórios, projectados para armazenamento de compilações de grandes dimensões, mas que não estão focados no desempenho da recuperação de dados.
Cache do Browser
Quando há cache da memória, os ficheiros são armazenados no computador (RAM e disco rígido) onde o browser está a ser executado. À posteriori, quando estes recursos se revelam necessários, o browser recorre à Cache da memória em alternativa à cache do servidor remoto, fazendo com que a página seja carregada rapidamente.
A velocidade de recuperação é fundamental, assim como a necessidade de verificar a existência de novos recursos. Uma das funções do browser é identificar e repor fontes obsoletas em cache.
Como é que o Browser identifica o que é obsoleto?
Ainda que não se trate de uma questão simples, há duas formas de abordagem: o “cache-busting” e o “HTTP header fields”.
No primeiro caso, é uma técnica paralela ao servidor que assegura que o browser identifica apenas novos recursos. A cache-busting não interfere com o armazenamento em cache nem com a fluidez do próprio browser, apenas altera os recursos originais da URL por forma a que estes se apresentem como novos ao navegador. Como aparentam ser novidade, não ficaram na cache do browser.
HTTP header fields. Todas as solicitações de recursos vêm com alguma meta informação, conhecidas como “cabeçalho”. Por sua vez, as respostas também contêm informações de “cabeçalho” associadas. Há situações em que o browser identifica os valores de resposta dos cabeçalhos e altera os valores correspondentes às solicitações subsequentes. De entre os diversos valores de cabeçalho, alguns afectam o modo como a cache de recursos é executada no navegador.
Na próxima semana daremos continuidade a esta temática.
0 comentários