Design URL Shortener
Turn billions of long URLs into short codes and redirect them in under 50ms, without collisions.
Prompt latihan
Problem Statement, Functional Requirements, and Scale Assumptions
Tentukan tujuan produk URL Shortener, aksi inti pengguna, non-goal yang eksplisit, dan asumsi skala awal sebelum mengusulkan komponen.
Non-Functional Requirements
Pilih sasaran latensi, ketersediaan (availability), durabilitas, pencegahan penyalahgunaan, privasi, dan observability yang sesuai untuk URL Shortener.
Quantitative Analysis
Perkirakan QPS penulisan, QPS redirect, kebutuhan penyimpanan, tekanan cache, dan bandwidth berdasarkan asumsi yang telah ditetapkan.
API Design
Definisikan operasi API, bentuk request/response, error validasi, ekspektasi idempotensi, dan semantik redirect.
High-Level Design
Usulkan komponen utama, alur data, batas penyimpanan, strategi cache, dan jalur redirect tanpa membangun state kanvas pembelajar terlebih dahulu.
Additional High-Level Design Prompts
Perjelas kepemilikan komponen, alur data, batas konsistensi, dan di mana analitik atau kontrol penyalahgunaan ditempatkan di luar jalur redirect yang sibuk (hot path).
Deep Dives
Telusuri properti pembangkitan ID, mitigasi hot-key, invalidasi cache, retensi data, dan trade-off mode kegagalan.
Final Review Handoff Readiness
Rangkum keputusan desain, risiko yang belum terselesaikan, dan bukti yang harus digunakan reviewer akhir untuk menghasilkan simulasi keputusan perekrutan (hiring verdict).
Preview solusi
Jalur referensi Solusi URL Shortener adalah materi belajar yang bersifat read-only. Gunakan untuk membandingkan desain Anda sendiri dengan sebuah jalur referensi yang ringkas sebelum memulai latihan atau setelah Anda menyelesaikan satu putaran. Pisahkan pembuatan link dari hot path redirect. Lindungi jalur redirect dengan pembacaan cache-first dan fallback m…