Como Funciona o CDN - Tecnologia para Acelerar a Entrega de Conteudo

13 min leitura | 2025.12.16

O que e CDN

CDN (Content Delivery Network) e um mecanismo que entrega conteudo a partir do local mais proximo do usuario, atraves de uma rede de servidores distribuidos pelo mundo.

Por que e necessario: Se o servidor de origem esta no Japao, usuarios nos EUA precisam esperar o tempo de ida e volta dos dados atraves do Pacifico. Com CDN, o conteudo pode ser obtido de um servidor de borda nos EUA, reduzindo drasticamente a latencia.

Estrutura Basica do CDN

flowchart TB
    subgraph Tokyo["Regiao de Toquio"]
        U1["Usuario (Toquio)"]
        E1["Servidor de Borda (Toquio)"]
    end

    subgraph NY["Regiao de Nova York"]
        U2["Usuario (NY)"]
        E2["Servidor de Borda (NY)"]
    end

    subgraph Origin["Origem"]
        O["Servidor de Origem (EUA)"]
    end

    U1 --> E1
    E1 -.->|Em caso de cache miss| O
    U2 --> E2
    E2 -.->|Em caso de cache miss| O
  • Servidor de Borda: Servidores de cache posicionados ao redor do mundo
  • Servidor de Origem: Servidor que mantem o conteudo original
  • PoP (Point of Presence): Data center onde os servidores de borda estao instalados

Fluxo de Operacao do CDN

Cache Hit

sequenceDiagram
    participant U as Usuario
    participant E as CDN Edge
    U->>E: Requisicao
    Note over E: Cache existe
    E->>U: Resposta imediata

Cache Miss

sequenceDiagram
    participant U as Usuario
    participant E as CDN Edge
    participant O as Servidor de Origem
    U->>E: 1. Requisicao
    Note over E: Sem cache
    E->>O: 2. Buscar
    O->>E: 3. Retornar conteudo
    Note over E: 4. Salvar no cache
    E->>U: 5. Resposta

Controle de Cache

Header Cache-Control

# Cache de 1 hora
Cache-Control: public, max-age=3600

# Sem cache
Cache-Control: no-store

# Revalidacao necessaria
Cache-Control: no-cache

# Cache apenas no CDN
Cache-Control: s-maxage=86400

Chave de Cache

O mesmo URL pode ter cache separado pelos seguintes elementos.

ElementoExemplo
Parametro de query?version=2
HeadersAccept-Encoding, Accept-Language
CookieStatus de login
DispositivoMobile/Desktop

Invalidacao de Cache (Purge)

Metodo para excluir cache antigo quando o conteudo e atualizado.

Purge Imediato

# Exemplo de API Cloudflare
curl -X POST "https://api.cloudflare.com/client/v4/zones/{zone_id}/purge_cache" \
  -H "Authorization: Bearer {token}" \
  -d '{"files":["https://example.com/image.jpg"]}'

Cache Busting

Incluir versao ou hash no nome do arquivo.

<!-- Numero de versao -->
<script src="/app.js?v=1.2.3"></script>

<!-- Hash de conteudo -->
<script src="/app.a1b2c3d4.js"></script>

Principais Funcionalidades do CDN

Protecao DDoS

flowchart TB
    A["Trafego de ataque"] --> B["CDN Edge<br/>(Absorcao e Filtragem)"]
    B --> C["Apenas trafego normal"]
    C --> D["Servidor de Origem"]

Terminacao SSL/TLS

O CDN processa a conexao HTTPS e otimiza a conexao com a origem.

flowchart LR
    U["Usuario"] -->|HTTPS| CDN["CDN"]
    CDN -->|HTTP/Otimizado| O["Origem"]

Otimizacao de Imagens

flowchart TD
    A["Original: image.jpg (2MB)"] --> B["Conversao automatica no CDN"]
    B --> C["WebP: image.webp (400KB)"]
    B --> D["AVIF: image.avif (300KB)"]
    B --> E["Redimensionamento: reduzido para o tamanho necessario"]

Edge Computing

Executa codigo na borda do CDN, processando proximo ao usuario.

// Exemplo Cloudflare Workers
export default {
  async fetch(request) {
    const url = new URL(request.url);

    // Teste A/B
    const variant = Math.random() > 0.5 ? 'A' : 'B';
    url.pathname = `/variant-${variant}${url.pathname}`;

    return fetch(url);
  }
}

Principais Provedores de CDN

ProvedorCaracteristicas
CloudflarePlano gratuito disponivel, recursos de seguranca robustos
AWS CloudFrontIntegracao com servicos AWS, Lambda@Edge
FastlyPurge em tempo real, configuracao VCL
AkamaiMaior escala, voltado para empresas
Vercel Edge NetworkOtimizado para Next.js, experiencia do desenvolvedor

Quando Usar CDN

Adequado

  • Assets estaticos (imagens, CSS, JavaScript)
  • Streaming de video
  • Sites com alcance global
  • Resposta a picos de trafego
  • Fortalecimento de seguranca

Requer Atencao

  • Conteudo atualizado frequentemente
  • Conteudo personalizado
  • APIs que requerem tempo real

Resumo

CDN e uma infraestrutura importante que melhora a performance e seguranca de sites. Ao projetar estrategias de cache apropriadas e utilizar CDN de acordo com as caracteristicas do conteudo, voce pode melhorar significativamente a experiencia do usuario.

← Voltar para a lista