Pular para o conteúdo principal
JonaFerreira
/// VOLTAR_PARA_PROJETOSCASE_STUDY: INFRA PRO
ID: INFRA PRO2024Infraestrutura & Proxy Reverso

Smaller

Encurtador de URLs de alta velocidade projetado com foco em arquitetura de infraestrutura moderna, orquestração com Docker Compose e Proxy Reverso Traefik.

/// 01_RESULTADOS_MEDIDOS_E_IMPACTO

< 5ms
Resolução de Link
Tempo de resposta para redirecionamento HTTP
1 Command
Deploy Instantâneo
Orquestração completa via docker-compose up
Zero
Downtime em Deploy
Rolling updates suportados pelo Traefik

/// 02_DIAGRAMA_DE_ARQUITETURA_E_FLUXO

/// TRAEFIK_EDGE // DOCKER_REVERSE_PROXYINGRESS: READY
EDGE GATEWAYsmaller.io/x9k2 ->
REDIRECT 301target.com/destination
DOCKER COMPOSEO(1) RESOLUTION
FLOW_TRACE:Incoming Web Request -> Traefik Edge -> Label Routing -> .NET URL Resolver -> Instant 301 Redirect

/// 03_CONTEXTO_DE_NEGÓCIO_E_DESAFIOS

Serviços de redirecionamento de URL em produção exigem latência mínima na resolução de links e proteção de segurança na borda contra requisições maliciosas ou rotas expostas sem TLS.

Desafios Técnicos Identificados:
  • >Implementar roteamento dinâmico e terminação TLS automática sem modificar o código da aplicação.
  • >Manter a resolução de código curto para URL original com custo computacional de O(1).
  • >Garantir ambiente 100% reproduzível via Docker Compose em qualquer servidor Linux.

/// 04_DECISÕES_DE_ARQUITETURA

Infraestrutura em contêineres orquestrada via Docker Compose com Traefik atuando como Ingress/Proxy Reverso na borda, gerenciando roteamento por domínios e load balancing.

Traefik como Edge Gateway

Descoberta automática de contêineres por labels no Docker Compose, eliminando a configuração manual de arquivos de NGINX.

.NET Core com Caching na Memória

Resolução de redirecionamento HTTP 301/302 com resposta ultra-rápida direto de cache de chave-valor.

/// 05_TRADE_OFFS_E_COMPROMISSOS_TÉCNICOS

DECISÃO ADOTADA:Redirecionamento HTTP 301 (Permanente) vs 302 (Temporário)
✓ RATIONALE (POR QUE):O 301 faz o navegador salvar o destino final no cache do cliente, reduzindo o tráfego do servidor em cliques repetidos.
⚠ DOWNSIDE (TRADE-OFF):Impede o rastreamento de métricas precisas de cliques recorrentes no mesmo navegador.
TECNOLOGIAS UTILIZADAS NO CASE
TraefikDockerDocker Compose.NET CoreC#Linux
Ver Todos os Projetos →