Progetta l’architettura di un URL shortener
Sul framework
L’esempio di URL shortener mostra un browser, un load balancer, un servizio API, una cache Redis, una mappa degli URL in Postgres, un generatore di ID, un servizio di analisi, un CDN e una coda Kafka. Otto frecce collegano questi nove componenti. Un riquadro separato con le metriche indica 100 milioni di reindirizzamenti giornalieri, una latenza p99 inferiore a 50 millisecondi e un uptime del 99,99% come obiettivi di esempio, non come risultati misurati.
L’API si collega alla cache e al database. Altri collegamenti vanno dalla cache, passando per la generazione degli ID, al CDN, e dal database, passando per l’analisi, a Kafka. Questa disposizione lascia irrisolto l’ordine effettivo della creazione dei link, della ricerca nella cache, della consegna del reindirizzamento e della pubblicazione degli eventi.
Adatta il disegno separando le richieste di creazione dei link da quelle di reindirizzamento. Definisci dove vengono assegnati gli ID, come i cache miss raggiungono lo storage e quando vengono emessi gli eventi dei clic. Usa le tue ipotesi sul traffico per verificare gli obiettivi, invece di considerare il diagramma una prova della loro fattibilità.
Cosa include
System design di un URL shortener
✦ Free preview · Sign in to use
Domande frequenti
No. Quel numero è un’etichetta nel riquadro con le metriche di esempio. La pianificazione della capacità e i test di carico richiederebbero un’attività separata, basata su un carico di lavoro definito.
Il disegno collega la cache al generatore di ID e poi al CDN. Non chiarisce come una richiesta di creazione assegni un ID e memorizzi la corrispondenza URL; chiedi esplicitamente di mostrare questo percorso.
Non viene mostrato né l’uno né l’altro. Prima di usare il diagramma come riferimento per l’implementazione, aggiungi la scadenza, le risposte per i link non validi e i controlli richiesti dal tuo servizio.
Gratuito per iniziare. Nessuna carta di credito richiesta.