Skip to main content
Kursus gratis · 7 pelajaran

Belajar System Design Gratis: Kursus Langkah demi Langkah

Belajar system design gratis dalam tujuh modul: scaling, caching, database, konsistensi, reliability, dan studi kasus, dengan diagram animasi interaktif.

Oleh Matthews WongDitinjau pada

Poin utama

System design adalah praktik mengubah requirements menjadi arsitektur yang tetap kokoh saat beban tinggi dan saat terjadi kegagalan. Kursus gratis ini mengajarkannya dalam tujuh pelajaran, dari estimasi kapasitas dan caching sampai replikasi, konsistensi, pola reliability, dan satu studi kasus lengkap. Setiap pelajaran punya diagram yang Anda telusuri sendiri dan kuis singkat, lalu 51 bahasan mendalam untuk melangkah lebih jauh.

Gratis, tanpa daftar, tanpa sertifikat. Dibangun dari setup yang menjalankan situs ini.

Mulai kursus

Yang akan bisa Anda lakukan

  • Mengestimasi beban dan penyimpanan dari sebuah requirement, lalu menyesuaikan desain dengannya.
  • Memilih antara caching, replikasi, partitioning, dan sharding untuk bottleneck yang nyata.
  • Menjelaskan trade-off konsistensi, konsensus, dan reliability dengan bahasa sederhana.
  • Menyelesaikan interview system design dengan satu framework yang bisa diulang.

Untuk siapa

Developer yang bersiap untuk interview system design, dan engineer yang ingin memahami alasan di balik arsitektur yang sudah mereka jalankan.

Sebelum mulai

  • Pernah membangun aplikasi web dengan database.
  • Baca modulnya berurutan untuk pertama kali; setelah itu bebas melompat.
Pelajaran

System design langkah demi langkah

  1. Cara Menghitung Kebutuhan Server: Estimasi System DesignCara menghitung kebutuhan server: dari user harian ke request per detik saat puncak, storage, dan jumlah server, plus latency lewat Little's law.12 menit · 3 artikel pendalaman
  2. Cara Scaling Aplikasi Web: Server Stateless sampai CDNCara scaling aplikasi web langkah demi langkah: salinan stateless di belakang load balancer, session di store bersama, lalu CDN dan cache penyerap baca.13 menit · 6 artikel pendalaman
  3. Cara Scaling Database: Index, Replika, sampai ShardingCara scaling database: model data dari query, index yang tepat, read replica beserta lag-nya, lalu sharding per key dengan ID tanpa counter bersama.14 menit · 7 artikel pendalaman
  4. Belajar Konsistensi Sistem Terdistribusi: ACID, CAP, dan SagaBelajar konsistensi sistem terdistribusi: ACID dan isolation di satu node, CAP dan PACELC, two-phase commit versus saga, serta lease dengan fencing token.14 menit · 7 artikel pendalaman
  5. Belajar Pola Reliability: SLO, Retry, dan Circuit BreakerBelajar pola reliability: SLO dan error budget, redundansi dan failover, retry dengan backoff dan jitter, bulkhead, backpressure, serta circuit breaker.14 menit · 6 artikel pendalaman
  6. Microservice untuk Pemula: Batas Service, Sync vs Async, QueueBelajar microservice dari dasar: kapan modular monolith cukup, cara menarik batas service, dan kapan panggilan sebaiknya sync, async, atau lewat queue.13 menit · 8 artikel pendalaman
  7. Contoh Studi Kasus System Design: Merancang Situs IniStudi kasus system design yang dikerjakan langsung: framework tujuh langkah diterapkan pada situs ini, dari requirements dan angka sampai titik lemahnya.14 menit · 14 artikel pendalaman