Edge computação e latency control
1) Porquê edge e o que é latency controle
Edge é uma lógica mais próxima do usuário (PoP, CDN, PoP local da operadora, 5G MEC). O objetivo é reduzir o RPT e as caudas (p95/p99), descarregar o núcleo e garantir o cumprimento geo das regras.
Latency Control é um conjunto de técnicas de arquitetura e protocolo que detêm o atraso em picos definidos por SLO, perda de pacotes e degradação de dependências.
Ideias essenciais: localidade, assincronia, degradação com prioridade de valor.
2) Mapa do perímetro
Static/Assets CDN: cachê, imagem/HTML-pdf, Brotli, WebP/AVIF, HTTP/3.
Edge compute: funções/worker (Cloudflare Workers, Gastly Compute @ Edge, Vercel Edge, Fly. io).
Edge data: KV/SQLite-on-edge/Durable Objects/Global Táveis (com reservas de consistência).
Edge segurança: WAF/Rate limit/Bot mgmt/Geo-rulas/HMAC.
Edge networking: Anycast, smart-routing, TCP/QUIC otimização.
3) Pattern de acomodação de lógica
Shielding & warmup: camada origin-shield, aquecimento/pinning de chaves populares.
Compute-on-read: personalização de banners, ramificação A/B, geo-redirectos.
Pré-auth at edge: validação do JWT/HMAC, remoção do «lixo» para o núcleo.
Write-through queue: gravação de eventos personalizados em uma fila edge com entregas asinhrônicas no núcleo (idempotidade!).
Função flags @ edge: botões rápidos de degradação (modo de página/diretório facilitado).
4) Protocolos e transportes
HTTP/3 (QUIC): menor handshake-overhead, resistência à perda de pacotes. Inclua o 0-PTT somente para GET/HEAD Idempotante.
TCP tuning (para HTTP/1. 1/2): BBR/CUBIC, `tcp_fastopen`, `keepalive`, connection pooling.
TLS: OCSP stapling, ECDSA-серты, session resumption; O HSTS está no perímetro.
DNS: TTL breves (30-120s) para dinâmica, split-horizonte, anycast-ressalvas.
5) Controle de «caudas»: p95/p99
Hedged requests: Duplique o pedido para o segundo backend após o «deadline inicial» (por exemplo, p90 laticínios) e cancele o perdedor.
Deadline propagation: passe 'x-deadline-ms '/' grpc-timeout' para garantir que a cadeia não ultrapasse a SLA.
Adaptável concurrency: Limite o paralelismo em root/tenante por observed-latency (AIMD).
Bolkhead & priority: Caminhos críticos (login/depósito) ganham uma quota e uma fila acima da classe.
6) Os temporizadores, os retais e a idempotação
Total deadline < per-hop timeout × N; retrai apenas para operações idumpotentes.
Backoff + jitter (atrasos semestrais), hedging em vez de retrações cegas.
Idempotency-Key para POST-ov (carteiras/pagamentos/bônus).
Retry-After e dicas de clientes (429/503) com janelas exponenciais.
Envoy (parte da rota)
yaml route:
timeout: 300ms retry_policy:
retry_on: "reset,5xx,connect-failure"
num_retries: 1 per_try_timeout: 150ms retry_host_predicate:
- name: envoy. retry_host_predicates. previous_hosts host_selection_retry_max_attempts: 3 hedge_policy:
initial_requests: 1 additional_request_chance: { default_value: 0. 5} # enable after per-timeout
7) Armazenamento em dinheiro e consistência
Castelo key disciplina: normalização de cabeçalhos/curti, Vary para os campos desejados.
Stale-while-revalidate: retorno instantâneo «um pouco obsoleto» + atualização de fundo.
Soft TTL/Hard TTL: obsolescência suave para caminhos read, TTL rígido para configurações críticas.
Signed exchanges/Signed OUTuls: proteção de recursos quentes, incluindo limitações regionais.
NGINX (exemplo SWR)
nginx proxy_cache_valid 200 10m;
proxy_cache_use_stale updating error timeout http_500 http_502 http_504;
add_header Age $upstream_cache_status;
8) Edge-workers: exemplos
Cloudflare Workers (JWT + Geo)
js export default {
async fetch(req, env, ctx) {
const url = new URL(req. url);
const { country } = req. cf {};
//Simple geo-policy if (country & &! ["DE, ""PL, ""SE,"" UA"] .includes (country)) {
return new Response("Region not served", { status: 451 });
}
//Easy JWT validation const token = req. headers. get("Authorization")?.replace("Bearer ","");
if (!token! isValid(token, env. JWTPUB)) return new Response("",{status:401});
//Prefetch critical data const resp = await fetch ("https ://origin. internal/api/v1/catalog", { cf:{ cacheTtl: 60, cacheEverything: true }});
return new Response(resp. body, resp);
}
}
Gastly Compute @ Edge (peso canário)
No hotel/página - 5% para a nova versão, reversão rápida através do edge-config.
9) Priorização e degradação
Priority hits: HTTP/2 prioridades/NTR Early Hants (103) → recursos críticos de push precoce.
Degrade path: Maciço UI simplificado, desativação de widgets pesados, redução da qualidade das imagens.
Traffic shaping: restrição de animações, widgets de terceiros para má rede (RUM).
10) Observabilidade no perímetro
RUM + Synthetic: Web-Vitals (LCP/CLS/INP), TTFB, RTT, потери QUIC.
Excemplars: Vincule p99 asps a trace _ id e PoP específicos.
SLO para região/ASN/provedor: «p95 TTFB ≤ 200 ms», «p99 API ≤ 400 ms».
Tail-sampling: guarde erros/p99, segmentos 'edge _ pop', 'region', 'tenant'.
Edge logs: WAF hits, bot-score, cache-status, soluções geo.
11) Gerenciamento de arquivos de terceiros
Políticas CSP e Subresource Integrity.
Download por defer/async, domínios isolados, caminhos críticos - sem JS de bloqueio de terceiros.
Personalização e tracking - executado em edge asincrona, sem afetar o TTFB.
12) Antibot/antifrode em edge
Device fingerprint e os limites velocity até o núcleo.
Token binding (torneios descartáveis por formulário/operação), HMAC assinatura solicitação.
O Challenge-step (Turnstile/hCaptcha) é apenas quando o risco é elevado; «confiança» por IP/ASN/sessão.
13) Especificidades do iGaming/Finanças
Geo-compliance: bloqueio/redirecionamento por jurisdição para edge (páginas de regras).
PSP/KYC priorização: edge-se para um provedor «saudável» (smart-routing), TTL/peso individuais em DNS para domínios PSP.
Anti-abuse: limites de depósito/inscrição/bónus com base nos sinais velocity para edge; todas as cirurgias write são idimpotentes.
Data residency: dados pessoais não são armazenados no edge; Títulos PII são editados/removidos e TLS-pinning incluídos no PSP.
CLO para caminhos «em dinheiro»: p95/p99 mais rigorosos, quotas dedicadas, alertas individuais.
14) Receitas arquitetônicas
14. 1 Frente rápida
Modelo HTML e CSS crítico em edge, dados através de 'stale-while-revalidate', heavy-widgets - preguiçoso.
14. 2 «Caminho do Dinheiro»
Pré-auth + HMAC em edge, verificações rápidas de regras/limites, publicação em fila, resposta 202/OK, posterior webhook/polling; dedline e hedging para PSP.
14. 3 «Diretórios/Jogos»
Diretórios/configs - KV/edge-dinheiro globais; para o preço/idade regional - compute-on-edge com regras locais.
15) Desempenho e custo
O hit em dinheiro 95% para o estático e 70% para o meio dinâmico (parte HTML) é a referência de destino.
Reduza o «egress cruzado regional» através de PoP locais e respostas stale.
Tail-rulas de trailing limitam o volume x 10- x 100, mantendo valiosas malas.
O protocolo QUIC economiza o RPT, mas mantenha o fallback no H2.
16) Folha de cheque pró-prontidão
- HTTP/3/QUIC está incluído; 0-PTT apenas para Idumpotentes.
- Edge-workers: JWT/HMAC validação, regras geo, função-flags degradação.
- Estratégia em dinheiro: chaves, SWR, soft/hard TTL; origin-shield + aquecimento.
- Hedging, deadline-propagation, concerrency adaptativo, bulkheads.
- Timeouts/retrações: backoff + jitter, apenas repetições idimpotentes.
- RUM+synthetic; SLO por região/ASN; tail-sampling r99/erros.
- CSP/SRI e controle de script de terceiros; WAF/bot-screen em edge.
- Para iGaming: geo-compliance, smart-routing PSP, idempotidade write, falta de PII no cachê.
- Runbooks: como ativar a degradação/mudança de peso/reversão de canarinho.
- Testes: Latência com perda de 1-3%, caos-atrasos, rehearse-feedback DNS.
17) TL; DR
Entregue a lógica o mais perto possível do usuário (edge-workers + dinheiro), fale em HTTP/3/QUIC, controle rígido de temporizadores/deadline, «corte de rabo» p99 hedging 'om e bolkhead/priority. Os caminhos críticos são quotas individuais e SLO, todos os registros são idimpotentes. Observabilidade - RUM + synthetic + tail-tracing. Para iGaming, geo-complance, smart-roting PSP/KYC, vazamento zero de PII no perímetro e rápidos modos de degradação.