Práticas recomendadas para o envio de conteúdo

Esta página fornece práticas recomendadas para otimizar e acelerar a entrega de conteúdo com a RFC de multimédia na nuvem. As secções estão divididas em várias áreas principais.

O Cloud CDN usa um Application Load Balancer externo como origem para conteúdo colocável em cache. Um Application Load Balancer externo pode fornecer uma combinação de conteúdo estático e criado dinamicamente aos utilizadores através de um endereço IP global dos seguintes tipos de back-ends:

Devido à integração perfeita com o Google Cloud, tem várias opções para implementar o Cloud CDN e gerir conteúdo. Use as práticas recomendadas aqui apresentadas para planear e otimizar a sua implementação. Para mais informações, consulte o artigo Configure o Cloud CDN.

Otimize a relação de resultados da cache

As seguintes práticas recomendadas ajudam a otimizar a taxa de acertos da cache.

Conteúdo estático da cache

Como prática recomendada para melhorar o desempenho, quando ativa a CDN da nuvem, tem de escolher o modo de cache adequado para a sua aplicação.

O método mais flexível e geralmente preferido para gerir regras de cache é usar o cabeçalho de controlo de cache. Se não estiver familiarizado com a utilização de cabeçalhos cache-control de origem, a prática recomendada é permitir que o Cloud CDN coloque automaticamente conteúdo estático em cache.

Para colocar automaticamente em cache as respostas estáticas da sua origem, pode usar a definição --cache-mode=CACHE_ALL_STATIC (predefinição). Esta definição permite que a cache da CDN da Google Cloud armazene em cache tipos de conteúdo estático comuns quando a origem não especifica nenhuma diretiva de armazenamento em cache nos cabeçalhos de resposta. Certifique-se de que o seu conteúdo corresponde às categorias descritas. Caso contrário, o conteúdo não é colocado em cache.

Não colocar em cache conteúdo específico do utilizador

Em alguns casos, os navegadores podem armazenar em cache conteúdo específico do utilizador. Não use o Cloud CDN para colocar em cache conteúdo específico do utilizador.

Use chaves de cache personalizadas para melhorar a taxa de acertos da cache

Para o desempenho e a escalabilidade, é importante otimizar a taxa de acertos da cache. Por predefinição, a RFC usa o URL do pedido completo para criar a chave da cache. Para ajudar a otimizar a taxa de acertos da cache, pode usar chaves de cache personalizadas para que o Cloud CDN não divida desnecessariamente a cache.

Armazenamento de chave-valor do Cloud CDN (clique para aumentar).

As chaves de cache personalizadas permitem-lhe incluir ou omitir qualquer combinação de protocolo, anfitrião e string de consulta. Seguem-se alguns exemplos de quando pode usar chaves de cache personalizadas:

  • Tem dois anfitriões que resolvem para o mesmo endereço IP e acedem ao mesmo serviço. Neste exemplo, todo o Website é igual nos dois anfitriões. Por predefinição, a RFC de multimédia na nuvem armazena em cache duas cópias devido ao cabeçalho Host: diferente nos pedidos HTTP. Com uma chave de cache personalizada, pode fazer com que a RFC ignore a parte do anfitrião do pedido e partilhe as entradas de cache.

  • Num exemplo mais específico, pode ter dois Websites em domínios diferentes que usam o mesmo logótipo. O conteúdo do Website é diferente, mas usa o mesmo logótipo da empresa em ambos os domínios e tem um serviço de back-end dedicado que contém conteúdo partilhado. Quando ativa o Cloud CDN e personaliza as chaves de cache para o serviço de back-end que contém o logótipo, desmarque a caixa de verificação Anfitrião para que a cache ignore o domínio, mas coloque o logótipo em cache.

  • Um logótipo tem de ser colocado em cache, quer seja apresentado através de HTTP ou HTTPS. Quando personaliza as chaves da cache para o serviço de back-end que contém o logótipo, desmarque a caixa de verificação Protocolo para que os pedidos através de HTTP e HTTPS contem como correspondências para a entrada da cache do logótipo.

Para saber como personalizar as chaves de cache, consulte o artigo Usar chaves de cache.

Otimize o desempenho

As seguintes práticas recomendadas ajudam a otimizar o desempenho.

Certifique-se de que o suporte do protocolo HTTP/3 e QUIC está ativado

O HTTP/3 é um protocolo de Internet de próxima geração. É criado com base no QUIC, um protocolo desenvolvido a partir do protocolo Google QUIC ) (gQUIC) original. O HTTP/3 é suportado entre o balanceador de carga HTTP(S) externo, o Cloud CDN e os clientes.

Para aumentar o desempenho com a CDN da Google Cloud, certifique-se de que o HTTP/3 está ativado.

Use a colocação em cache negativa

A colocação em cache negativa oferece um controlo detalhado sobre a colocação em cache para erros ou redirecionamentos comuns. Quando a CDN na nuvem encontra códigos de resposta específicos, mantém essa resposta na cache durante um TTL definido. Isto pode reduzir a carga nas suas origens e melhorar a experiência do utilizador final através da redução da latência de resposta.

Ative os dados antecipados do TLS

A utilização de dados iniciais do TLS melhora a taxa de ligações retomadas em 30 % a 50 %. Para ativar os dados iniciais do TLS, use o comando gcloud compute target-https-proxies update com a opção tls-early-data. Para mais informações, consulte o artigo Configure os dados antecipados do TLS.

Pode ativar os dados antecipados do TLS nos modos STRICT ou PERMISSIVE.

  • STRICT: ativa os dados antecipados para métodos idempotentes (GET, HEAD, OPTIONS e TRACE) que não têm outros parâmetros de consulta. Este é o método mais seguro e aplicável na maioria dos casos.
  • PERMISSIVE: ativa os dados antecipados para métodos idempotentes que podem incluir parâmetros de consulta. Quando usar este modo, tem de monitorizar atentamente o comportamento da sua aplicação e a postura de segurança.

Os pedidos de dados iniciais que usam métodos HTTP não idempotentes ou têm parâmetros de consulta são rejeitados com um código de estado HTTP 425.

Otimize a segurança

As seguintes práticas recomendadas ajudam a otimizar a segurança.

Use o Google Cloud Armor

O Cloud Armor integra-se com o Cloud CDN para conteúdo em cache e não em cache ou com falhas de cache. Uma recomendação de prática recomendada é usar o Cloud Armor em conjunto com o Cloud CDN sempre que possível para aumentar a segurança das aplicações Web.

Use URLs assinados

Se estiver a usar URLs assinados, tenha em atenção o seguinte:

Autentique origens privadas

A autenticação de origem oferece uma forte garantia de que o pedido é proveniente apenas do serviço de back-end configurado por si. Também oferece proteção de dados em trânsito para o pedido e protege contra a reutilização da parte assinada do pedido.

Recomendamos a utilização da autenticação de origem privada para contentores do Amazon S3 ou armazenamentos de objetos compatíveis. A autenticação de origem privada ajuda a garantir que apenas as ligações fidedignas acedem ao conteúdo nas suas origens privadas e que os utilizadores não acedem diretamente a elas.

Além disso, se as firewalls de origem impedirem o acesso à origem, use a lista de autorizações de IP para garantir que um pedido é do Cloud CDN ou do Application Load Balancer externo. No entanto, isto não impede que outros clientes da CDN de multimédia tentem aceder ao seu conteúdo especificando a sua origem na respetiva configuração.

Otimize a cache

As seguintes práticas recomendadas ajudam a otimizar a cache.

Otimize os TTLs da cache

Pode definir ou substituir os TTLs para ajustar o tempo durante o qual o Cloud CDN armazena em cache as suas respostas e quando o Cloud CDN revalida as suas respostas.

Também pode definir um TTL orientado para o cliente para tirar o máximo partido das caches do navegador.

Para mais informações, consulte o artigo Usar definições e substituições de TTL.