O Que É o Amazon CloudFront? Content Delivery Network da AWS
O Amazon CloudFront é a content delivery network da AWS: ela faz cache do seu conteúdo em edge locations ao redor do mundo para que os usuários obtenham respostas rápidas de um point of presence próximo.
O CloudFront fica entre seus usuários e sua origin (frequentemente um bucket S3 ou um load balancer), fazendo cache das respostas perto de onde vêm as requisições. Ele corta a latência, absorve picos de tráfego, termina o HTTPS, e fornece uma camada de segurança na frente da sua aplicação.
Como funciona uma edge de CDN
Quando um usuário requisita um arquivo, o CloudFront o serve a partir do edge cache mais próximo se disponível. Em um cache miss, ele busca da sua origin, armazena a resposta, e serve as requisições subsequentes a partir da edge. Isso reduz drasticamente a carga na origin e o round-trip time.
Origins e behaviors
Uma distribution aponta para uma ou mais origins e usa cache behaviors para decidir como diferentes paths são cacheados. Você controla os TTLs, quais headers e query strings afetam o caching, e como as requisições roteiam para cada origin.
Recursos de segurança
- Certificados HTTPS gratuitos via ACM para seus domínios.
- Origin access control para que só o CloudFront possa ler um bucket S3 privado.
- Integração com o AWS WAF para filtrar tráfego malicioso.
- Geo-restriction para permitir ou bloquear países específicos.
Cache invalidation
Como as edges fazem cache agressivamente, implantar conteúdo novo significa dizer ao CloudFront para descartar as cópias obsoletas. Você emite uma invalidation para os paths alterados (ou usa nomes de arquivo versionados para evitar o problema por completo).
Papel no CI/CD
Um deploy job de front-end faz upload do build para o S3, então cria uma CloudFront invalidation para que os usuários vejam a nova versão imediatamente. Ambos os passos rodam a partir do pipeline usando uma role IAM/OIDC. Nomes de arquivo de asset versionados permitem invalidar apenas o index.html e manter o cache de todo o resto.
Principais conclusões
- O CloudFront faz cache de conteúdo em edge locations globais para reduzir a latência.
- Ele fronteia origins como S3 ou load balancers e adiciona HTTPS e controles de segurança.
- Deploys precisam invalidar o cache para que os usuários vejam o conteúdo recém-publicado.