Visão geral da invalidação de cache

Nesta página, você encontra uma visão geral da invalidação de cache do Cloud CDN. Consulte Como invalidar conteúdo armazenado em cache para saber mais.

O que é invalidação de cache?

Depois que um objeto é armazenado em cache, ele normalmente permanece em cache até expirar ou ser excluído para dar espaço a conteúdos novos. Controle o horário da expiração por meio de cabeçalhos HTTP padrão. Para mais detalhes, consulte a seção de horários de expiração nos "Detalhes de armazenamento em cache".

Às vezes, é possível excluir um objeto do cache antes do tempo normal de expiração. Você pode forçar um objeto ou conjunto de objetos a ser ignorado pelo cache solicitando uma invalidação de cache.

É importante garantir que o servidor de origem esteja retornando o conteúdo correto antes de solicitar a invalidação de cache. Caso contrário, quando o Cloud CDN solicitar o conteúdo novamente, ele poderá armazenar em cache novamente o conteúdo que ainda está incorreto.

Padrões de caminho

Cada solicitação de invalidação especifica um padrão de caminho que identifica o objeto ou conjunto de objetos que será invalidado. O padrão do caminho pode ser um caminho específico, como /cat.jpg, ou uma estrutura inteira de diretório, como /pictures/*. As regras a seguir se aplicam a padrões de caminho:

  • O padrão de caminho precisa começar com /.
  • Não pode incluir ? ou #.
  • Não pode incluir *, exceto se for o caractere final e após uma /.
  • Se terminar com /*, a string é um prefixo e todos os objetos cujos caminhos começam com esse prefixo são invalidados.

O padrão de caminho é comparado com o componente do caminho do URL, que é tudo entre o nome de host e qualquer ? ou # que estiver presente.

Se você tiver URLs que contenham strings de consulta, como /images.php?image=fred.png, não será possível invalidar objetos que diferem apenas por string de consulta. Por exemplo, se você tiver duas imagens, /images.php?image=fred.png e /images.php?image=barney.png, não será possível invalidar apenas fred.png. Para invalidar todas as imagens veiculadas por images.php, use /images.php como o padrão de caminho.

Como invalidar o cache para apenas um host

Normalmente, a invalidação de cache se aplica aos caminhos de todos os seus nomes de host. Por exemplo: se você tiver example.com e example2.com indicados para o mesmo balanceador de carga e invalidar /images/cat.jpg, tanto example.com/images/cat.jpg quanto example2.com/images/cat.jpg serão invalidados.

Você pode restringir a invalidação para apenas um dos hosts adicionando a sinalização --host ao comando.

Consulte as instruções em Como invalidar conteúdo armazenado em cache.

Limitações

A invalidação é usada em circunstâncias excepcionais, não como parte do seu fluxo normal. O mais importante é que as invalidações não afetam cópias armazenadas em caches de navegador da Web ou operados por provedores de acesso à Internet de terceiros. Como alternativa às invalidações de rotina, você pode definir antecipadamente os tempos de expiração adequados em respostas e/ou usar URLs diferentes para versões distintas do seu conteúdo. Para ver mais informações sobre tempos de expiração, consulte Tempos de expiração e solicitações de validação.

As invalidações são limitadas por taxa. Você pode enviar no máximo uma invalidação por minuto. Porém, a invalidação pode ser de qualquer tamanho. Invalidar /images/fred.png conta como uma invalidação. Invalidar /images/* também conta como uma invalidação.

Invalide somente o que for necessário. Afinal, um excesso de invalidações pode aumentar muito o número de solicitações veiculadas pelos caches, e essas solicitações podem acabar atingindo as suas instâncias ou os seus intervalos de repente.

Como o Cloud CDN é um sistema distribuído, ele pode relatar que uma invalidação foi concluída mesmo que um número pequeno de caches não tenha processado a solicitação de invalidação ainda. Esta situação é extremamente rara e se corrigirá automaticamente.

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Cloud CDN