Cache CDN: Estratégia de Distribuição CloudFront
Este artigo explica como usamos a CDN CloudFront para armazenar conteúdo em cache e melhorar o desempenho global.
O Problema: Latência Global
Os usuários acessam nosso site de todo o mundo:
-
Índia: 50ms de latência
-
EUA: 200ms de latência
-
Europa: 250ms de latência
-
Ásia: 150ms de latência
Servir todo o tráfego a partir da Índia causa carregamentos lentos de página para usuários internacionais.
A Solução: CDN CloudFront
CloudFront: Rede de Entrega de Conteúdo da AWS
Locais de borda: Mais de 400 locais em todo o mundo
Benefício: Conteúdo servido a partir do local mais próximo
O Que é Armazenado em Cache
Ativos Estáticos (TTL Longo)
Conteúdo: Imagens, CSS, JavaScript, fontes
TTL: 1 ano
Caminho: /s/*
Benefício: Raramente muda, cache agressivo
Páginas de Produto (TTL Médio)
Conteúdo: Especificações de produtos, imagens
TTL: 1 hora
Caminho: /p/*
Benefício: Equilíbrio entre atualidade e desempenho
Páginas de Consulta (TTL Curto)
Conteúdo: Resultados de pesquisa, visualizações filtradas
TTL: 5 minutos
Caminho: /q/*
Benefício: Atualizações frequentes, cache curto
Artigos (TTL Longo)
Conteúdo: Documentação técnica
TTL: 24 horas
Caminho: /a/*
Benefício: Raramente muda
O Que NÃO é Armazenado em Cache
Conteúdo dinâmico:
-
Resultados de pesquisa (
/q/?q=<consulta>) -
Conteúdo específico do usuário (carrinho, conta)
-
Endpoints de API (
/api/*)
Razão: Deve estar atualizado, específico do usuário
Comportamento do Cache
Chave de Cache
O CloudFront usa a URL como chave de cache:
Mesma URL: Servida do cache
URL diferente: Nova entrada de cache
Parâmetros de consulta: Incluídos na chave (exceto parâmetros de rastreamento)
Cabeçalhos de Cache
O servidor de origem define os cabeçalhos de cache:
Cache-Control: public, max-age=3600
public: Pode ser armazenado em cache pela CDN
max-age: Duração do cache em segundos
Invalidação de Cache
Manual: Criar uma solicitação de invalidação
Automática: Aguardar a expiração do TTL
Custo: Primeiras 1.000 rotas gratuitas por mês
Veja: CACHE_INVALIDATION_RULE.md para a política
Proteção da Origem
A CDN protege o servidor de origem:
Absorção de tráfego: A CDN lida com picos de tráfego
Mitigação de DDoS: Filtra tráfego malicioso
Limitação de taxa: Evita sobrecarga da origem
Benefício: A origem permanece responsiva
SSL/TLS
Certificado: AWS Certificate Manager
Protocolo: TLS 1.2+
Benefício: Tráfego criptografado, certificado gratuito
Compressão
Gzip: Habilitado para conteúdo de texto
Brotli: Habilitado para navegadores modernos
Benefício: Downloads mais rápidos, menor largura de banda
Restrições Geográficas
Nenhuma: Disponível em todo o mundo
Benefício: Alcance global
Monitoramento
Métricas:
-
Taxa de acerto do cache
-
Solicitações de origem
-
Taxa de erro
-
Latência por região
CloudWatch: Serviço de monitoramento da AWS
Otimização de Custos
Taxa de acerto do cache: Maior = custos menores
Solicitações de origem: Menos = custos menores
Transferência de dados: Em cache = mais barato
Benefício: A CDN reduz os custos de infraestrutura
Referências
Serviços AWS
-
CloudFront - Documentação da CDN da AWS
-
Certificate Manager - Certificados SSL
Artigos Relacionados
- Arquitetura Multi-Servidor - CDN na arquitetura
Resumo
A CDN CloudFront melhora o desempenho global:
Conteúdo em cache:
-
✅ Ativos estáticos (TTL de 1 ano)
-
✅ Páginas de produto (TTL de 1 hora)
-
✅ Páginas de consulta (TTL de 5 minutos)
-
✅ Artigos (TTL de 24 horas)
Não armazenado em cache:
-
✅ Busca dinâmica
-
✅ Conteúdo específico do usuário
-
✅ Endpoints de API
Benefícios:
-
✅ Menor latência (locais de borda)
-
✅ Proteção da origem (absorção de tráfego)
-
✅ Mitigação de DDoS
-
✅ Redução de custos (menos solicitações de origem)
Funcionalidades:
-
✅ Criptografia SSL/TLS
-
✅ Compressão Gzip/Brotli
-
✅ Disponibilidade global
Esta estratégia de CDN equilibra desempenho, atualidade e custo.