Aprenda / Redes e Internet

FundamentosAula 7 de 1616 min0% da trilha

CDN — conteúdo mais perto do usuário

Por que um site global não serve tudo de um único servidor — e o que muda entre cache hit e cache miss.

Se o servidor de um site mora nos EUA, um visitante no Brasil espera a viagem completa até lá e volta — a velocidade da luz numa fibra óptica já impõe um limite físico real. Uma CDN (Content Delivery Network) resolve isso espalhando cópias do conteúdo em servidores ("edges") por várias regiões do mundo — o visitante fala com o edge mais próximo, não com a origem.

Os dois cenários abaixo usam a mesma topologia — visitante, edge mais próximo, origem lá longe — só muda até onde a requisição precisa viajar.

Cenário 1 — Cache HIT (o edge já tem o arquivo)

Visitante (BR)
Edge CDN (São Paulo)
Origem (EUA)

Clique em “Reproduzir fluxo” para ver a requisição passo a passo.

Cenário 2 — Cache MISS (o edge precisa buscar na origem)

Visitante (BR)
Edge CDN (São Paulo)
Origem (EUA)

Clique em “Reproduzir fluxo” para ver a requisição passo a passo.

Depois de um MISS, o mesmo arquivo já fica em cache naquele edge — o próximo visitante da mesma região recebe um HIT, sem a viagem até a origem de novo.

O que uma CDN normalmente NÃO cacheia

Bom pra CDN: imagem, CSS, JS, vídeo, fonte — arquivo que não muda por usuário
Ruim pra CDN: resposta de API personalizada por usuário, dado de sessão,
              conteúdo que muda a cada requisição sem um cache-control explícito
header que controla isso
Cache-Control: public, max-age=31536000, immutable
// "pode cachear, guarda por 1 ano, esse conteúdo nunca muda"
// — típico de um arquivo com hash no nome (logo.a3f9e2.png)

Exercício

Um arquivo app.a3f9e2.js (com hash no nome, gerado pelo build) pode usar Cache-Control: immutable com segurança. Por quê?

Quiz rápido

Qual o principal ganho de uma CDN pra um visitante longe do servidor de origem?
O que acontece num cache MISS num edge de CDN?