Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Índice

Índice
maxLevel4
outlinetrue
exclude.*ndice
stylenone


Objetivo

Esse guia tem o objetivo de detalhar o uso da técnica de cache em navegador, passando pelos benefícios da técnica e exemplos.


O que é Cache?

Cache é uma técnica utilizada para guardar uma cópia do dado recurso e quando requisitada, essa cópia do dado é apresentada. Quando temos um web cache com um recurso requerido anteriormente armazenado, ele intercepta a solicitação devolvendo sua cópia não sendo necessário fazer o download novamente do servidor original, facilitando em vários pontos como por exemplo: o balanceamento do servidor não precisando servir todos os clients sozinho, proximidade com o client levando menos tempo para transmitir o recurso de volta.

São muitas vantagens ao se utilizar a técnica de cache, porém precisa essa técnica precisa de uma configuração correta pois os recursos armazenados podem mudar ao longo do tempo, isso faz com que seja retornado um recurso obsoleto. O importante é sempre lembrar: um recurso só cabe no cache somente até que ele sofra alterações.

Ao utilizar cache, a performance de aplicações e websites podem melhorar significativamente pois o reuso de recursos buscados previamente diminui bastante o tempo de retorno da resposta.


Benefícios

Redução do tráfego
Menos requisições e respostas precisam trafegar na rede. O objeto é recuperado do servidor somente uma vez, reduzindo a quantidade de banda usada pelo cliente. Pode-se conseguir taxas de acerto de até 60%.

Redução de carga dos servidores
Menos requisições para o servidor WWW atender. Exemplificando, alguns sites ficam extremamente congestionados quando do lançamento de novos produtos. Um servidor proxy pode resolver o problema.

Redução da latência
As respostas de requisições aos objetos "cacheados" são feitas a partir do cache local, não pelo servidor WWW original, ou seja, o acesso tende a ser bastante rápido.


Explicando cache no Fluig - exemplos

Vamos disponibilizar os principais exemplos de recursos que possuem cache e qual o tempo de expiração deles. O desenvolvedor irá fornecer essas informações.


Imagem na timeline - API de Thumbnail antiga

Bloco de código
/webdesk/streamcontrol/?WDCompanyId=1&WDNrDocto=1074&WDNrVersao=1000&thumbnail=640_AUTO&replicationServer=false
    Headers:
    Cache-Control: max-age=3600, public (tempo de expiração: 1 hora)


Resources de Widgets - JavaScript e CSS

Bloco de código
/portal/resources/(*.js | *.css)
    - Não tem controle de cache porém agora os browsers estão começando a cachear esses arquivos
    Headers:
    Cache-Control: no-cache


Imagem de perfil

Bloco de código
/social/api/rest/social/image/profile/adm/SMALL_PICTURE
    Headers:
    Cache-Control: no-transform, max-age=60000 (tempo de expiração: 16 horas)


Como forçar a limpeza?

Existem algumas formas de forçar a limpeza do cache nos navegadores, apresentamos algumas formas abaixo:

  • Chrome: CTRL + Shift + R (mostra os atalhos em todos os browsers);
  • Limpeza manual via configuração dos browsers;
  • Acessar em uma aba anônima para fazer a limpeza.
Dica
titleDica!

Recomendamos a leitura da documentação oficial do Mozilla® sobre Cache.