Edge calcolo e latency control
1) Perché edge e cos'è latency control
Edge è l'esecuzione di una logica più vicina all'utente (PoP, CDN, PoP locale dell'operatore, 5G del TIPO). L'obiettivo è quello di ridurre le RPT e le code (p95/p99), scaricare il nucleo e garantire il rispetto delle regole geo.
Latency Control è un insieme di tecniche architettoniche e protocollari che trattengono la latenza negli SLO definiti nei picchi, la perdita dei pacchetti e la degradazione delle dipendenze.
Le idee chiave sono località, asincronia, degrado con priorità di valore.
2) Mappa del perimetro
Static/Assets CDN: cache, immagine/HTML-form, Brotli, WebP/AVIF, HTTP/3.
Funzioni/worker (Cloudflare Workers, Fastly Compute @ Edge, Vercel Edge, Fly. io).
Edge data: KV/SQLite-on-edge/Durable Objects/Global Table (con riserve di consistenza).
Edge security: controllo WAF/Rate limit/Bot mgmt/Geo-rule/HMAC.
Edge networking: Anycast, smart-routing, TCP/QUIC ottimizzazione.
3) Pattern di posizionamento logica
Shielding & warmup: strato origin-shield, riscaldamento/pinning delle chiavi popolari.
Compute-on-read: personalizzazione dei banner, A/B, geo-ready.
Pre-auth at edge: convalida JWT/HMAC, scollegamento «spazzatura» fino al nucleo.
Write-through queue - Scrittura di eventi personalizzati in una coda edge con consegna asincrona al nucleo (idampotenza!).
Feature flags @ edge - Pulsanti di scelta rapida per il degrado (modalità pagina/directory facilitata).
4) Protocolli e trasporti
HTTP/3 (QUIC): minore handshake-overhead, resistenza alla perdita di pacchetti. Abilita 0-RTT solo per GET/HEAD idempotati.
TCP tuning (per HTTP/1. 1/2): BBR/CUBIC, `tcp_fastopen`, `keepalive`, connection pooling.
TLS: OCSP stapling, ECDSA-серты, session resumption; HSTS sul perimetro.
DNS: TTL brevi (30-120s) per altoparlanti, split-horizon, anycast-resolver.
5) Gestione delle code: p95/p99
Hedged recests: duplica la richiesta per il secondo backend dopo «deadline iniziale» (ad esempio p90 latitanza) e annulla il perdente.
Deadline propagation: trasmettere «x-deadline-ms »/« grpc-timeout» in modo che la catena non superi la SLA.
Adattative concertency - Limitare il parallelismo al root/tenant per osserved-latency (AIMD).
Bullkhead & priority - I percorsi critici (login/deposito) ricevono una quota e una coda superiore alla classe.
6) Timeout, retrai e idampotenza
Total deadline < per-hop timeout × N; I retrai sono solo per operazioni idipotenti.
Backoff + jitter (ritardi semi-casuali), hedging invece dei retrai ciechi.
Idempotency-Key per POST-ov (portafogli/pagamenti/bonus).
Retry-After e suggerimenti client (429/503) con finestre esponenziali.
Invoy (parte del percorso)
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) Cache e consistenza
La disciplina Cache key è la normalizzazione dei titoli/curry, Vary nei campi desiderati.
Stale-while-revalidate: rendita istantanea «leggermente obsoleta» + aggiornamento di sfondo.
Soft TTL/Hard TTL: obsolescenza morbida per i percorsi read, TTL rigidi per le configurazioni critiche.
Signed exchanges/Signed URLs protegge le risorse calde, comprese le limitazioni regionali.
NGINX (esempio 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: esempi
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);
}
}
Fastly Compute @ Edge (pesi canarini)
In hotel/pagine - 5% per la nuova versione, rapido rimborso tramite edge-config.
9) Priorità e degrado
Priority hints: HTTP/2 priorità/NTR Early Hints (103) → il push precoce delle risorse critiche.
Degrade path: mapping UI semplificato, disattivazione di widget pesanti, abbassamento della qualità delle immagini.
Traffic shaping - Limita le animazioni, i widget dei provider di terze parti in caso di cattiva rete (RUM).
10) Osservabilità sul perimetro
RUM + Synthetic: Web-Vitals (LCP/CLS/INP), TTFB, RTT, потери QUIC.
Exemplars: collegare i p99 accoppiamenti a specifici trace _ id e PoP.
SLO per regione/ASN/provider: «p95 TTFB da 200 ms», «p99 API da 400 ms».
Tail-sampling: salva errori/p99, segmenti «edge _ pop», «region», «tenant».
Edge logs: WAF hits, bot-score, cache-status, geo-soluzioni.
11) Gestione degli script di terze parti
Criteri CSP e Subresource Integrity.
Download per defer/async, domini isolati, percorsi critici senza JS di terze parti.
Personalizzazione e tracking - Esegui su edge in modo asincrono, senza influire su TTFB.
12) Antibot/antifrode su edge
Device fingerprint e limiti velocity fino al kernel.
Token binding (token monouso per modulo/operazione), HMAC firma query.
Challenge-step (Turnstile/hCaptcha) solo a rischio elevato memorizzare la credibilità tramite IP/ASN/sessione.
13) Specificità iGaming/finanza
Geo-compliance - Blocco/reindirizzamento della giurisdizione su edge (pagine di regole).
PSP/KYC Priorità: edge-routing su un provider «sano» (smart-routing), TTL/peso separati su DNS per domini PSP.
Anti-abuse: limiti per depositi/immatricolazioni/bonus, tenendo conto dei segnali velocity su edge; tutte le operazioni write sono idipotenti.
Data residency: i dati personali non vengono memorizzati nella cache su edge; Le intestazioni PII vengono modificate/eliminate e TLS-pinning attivato per PSP.
CLO per i percorsi «cash»: p95/p99 più rigorosi, quote dedicate, alert separati.
14) Ricette architettoniche
14. 1 «Fronte rapido»
Il modello HTML e il CSS critico su edge, i dati sono stale-while-revalidate, i widget heavy sono pigri.
14. 2 «La via del denaro»
Pre-auth + HMAC su edge, controlli rapidi delle regole/limiti, pubblicazione in coda, risposta 202/OK, successivo webhook/polling; deadline e hedging a PSP.
14. 3 «Cataloghi/giochi»
Directory/configi - KV/edge-cache globali; per il prezzo/età regionale - compute-su-edge con regole locali.
15) Prestazioni e costi
La cache ha raggiunto il 95% per lo statico e il 70% per l'altoparlante di mezzo (HTML) è il punto di riferimento di destinazione.
Riduce l'egress regionale attraverso le risposte locali e stale.
Tail-riles tracsing limitano il volume di x 10-x 100 mantenendo validi valige.
Il protocollo QUIC risparmia RTT, ma tieni fallback su H2.
16) Assegno-foglio prod-pronto
- HTTP/3/QUIC abilitato; 0-RTT solo per idipotenti.
- Edge-workers: validazione JWT/HMAC, regole geo, feature-flags del degrado.
- Strategia cache: chiavi, SWR, soft/hard TTL; origin-shield + riscaldamento.
- Hedging, deadline-propagation, adattivo concertency, bulkheads.
- Timeout/retrai: backoff + jitter, solo ricorrenze idipotenti.
- RUM+synthetic; SLO per regione/ASN; tail-sampling p99/errori.
- CSP/SRI e controllo degli script di terze parti; Scansione WAF/bot su edge.
- Per il iGaming: geo-compliance, smart-routing PSP, idemoticità write, assenza di PII nella cache.
- Runbooks: come attivare la degradazione/alterazione di peso/rimozione di canarini.
- Test: latitanza con perdita 1-3%, timore-ritardo, rehearse-feelover DNS.
17) TL; DR
Portate la logica il più vicino possibile all'utente (edge-workers + cache), parlate con HTTP/3/QUIC, controllate i timeout/deadline, tagliate le code con p99 hedging'e bullkhead/priority. I percorsi critici sono quote separate e SLO, tutti i record sono idepotenti. Osservabilità - RUM + synthetic + tail-tracing. Per il iGaming, geo-compilation, smart-routing PSP/KYC, zero perdita di PII sul perimetro e modalità di degrado veloci.