분산 시스템 기초 키트
기본 구성 요소 학습: 추정, 고유 ID, 복원력, 키-값 저장소, 캐시, 락과 합의, 메시지 큐, 스트림 처리, CDC, 내구성 워크플로.
학습
Back-of-Envelope Estimation and Capacity Model Template
전체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)Distributed Unique ID Generator System Design Template
전체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)Resilience and Load Shedding Design Template (Retries, Circuit Breakers)
전체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
참조 설계
Distributed Key-Value Store System Design Template (Dynamo-Style)
전체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)Distributed Cache System Design Template
전체Distributed cache: cache-aside, delete on write, leases against herds, commit-log invalidation across regions, slot maps, hot keys, gutter pool, warm-up
Distributed Lock and Coordination System Design Template
전체Lock and coordination service: Raft consensus, read index, sessions and keep-alives, leader election, fencing tokens, watches, read scaling, misuse policy
Distributed Message Queue System Design Template (Kafka-Style Log)
전체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)Stream Processing Engine System Design Template
전체Stream processing engine: event time, watermarks, windows and triggers, late data, keyed state, barrier checkpoints, exactly-once sinks, backpressure, rescaling
CDC Pipeline System Design Template
전체CDC pipeline: log-based capture, watermark chunked snapshot, per-key order, schema evolution, outbox, search, cache and warehouse sinks, replay
Workflow Orchestration Engine System Design Template
전체Durable workflow engine design: event history and replay, deterministic code, activities, timers, task queues, retries, versioning, visibility, history sharding