Markdown Editor

Kit dasar sistem terdistribusi

Pelajari blok dasar: estimasi, ID unik, ketahanan, penyimpanan key-value, cache, kunci dan konsensus, antrean pesan, pemrosesan stream, CDC, dan workflow tahan lama.

Langkah 1

Pembelajaran

  1. Back-of-Envelope Estimation and Capacity Model Template

    Lengkap

    Reference latency and unit tables, assumptions register, QPS, storage, bandwidth, cache, server and cost formulas, worked example, sensitivity, traceability

    Jeff Dean latency numbers (LADIS 2009)
  2. Distributed Unique ID Generator System Design Template

    Lengkap

    UUIDv4 and v7 per RFC 9562, Snowflake 41/10/12 layout, clock skew and backwards clocks, leased worker IDs, index locality, 53-bit JS limit, ticket servers

    RFC 9562 (May 2024)
  3. Resilience and Load Shedding Design Template (Retries, Circuit Breakers)

    Lengkap

    Failure model, deadlines, retries with jitter and budgets, circuit breakers, bulkheads, backpressure, criticality-based shedding, degradation, fault tests

    Google SRE book ch. 21-22; Amazon Builders' Library
Langkah 2

Desain referensi

  1. Distributed Key-Value Store System Design Template (Dynamo-Style)

    Lengkap

    Consistent hashing, vnodes, quorums (R+W>N), vector clocks vs LWW, hinted handoff, Merkle anti-entropy, gossip, LSM compaction, cache eviction, hot keys

    Dynamo (DeCandia et al., SOSP 2007)
  2. Distributed Cache System Design Template

    Lengkap

    Distributed cache: cache-aside, delete on write, leases against herds, commit-log invalidation across regions, slot maps, hot keys, gutter pool, warm-up

  3. Distributed Lock and Coordination System Design Template

    Lengkap

    Lock and coordination service: Raft consensus, read index, sessions and keep-alives, leader election, fencing tokens, watches, read scaling, misuse policy

  4. Distributed Message Queue System Design Template (Kafka-Style Log)

    Lengkap

    Partitions, log segments, retention, acks and idempotence, consumer groups, offsets, delivery semantics, ordering, ISR replication, backpressure, DLQ, schemas

    Apache Kafka 4.3 documentation; Kafka paper (NetDB 2011)
  5. Stream Processing Engine System Design Template

    Lengkap

    Stream processing engine: event time, watermarks, windows and triggers, late data, keyed state, barrier checkpoints, exactly-once sinks, backpressure, rescaling

  6. CDC Pipeline System Design Template

    Lengkap

    CDC pipeline: log-based capture, watermark chunked snapshot, per-key order, schema evolution, outbox, search, cache and warehouse sinks, replay

  7. Workflow Orchestration Engine System Design Template

    Lengkap

    Durable workflow engine design: event history and replay, deterministic code, activities, timers, task queues, retries, versioning, visibility, history sharding