# Map of Concepts in Distributed Systems
The following items are placeholders for further research and learning.
## Foundations
- [[What is a Distributed System]]
- [[CAP Theorem]]
- [[FLP Impossibility]]
- [[System Models (Sync, Async, Partial)]]
- [[Fallacies of Distributed Computing]]
## Consistency & Coordination
- [[Consistency Models]]
- [[Strong Consistency]]
- [[Eventual Consistency]]
- [[Causal Consistency]]
- [[Consensus Algorithms]]
- [[Paxos]]
- [[Raft]]
- [[Viewstamped Replication]]
- [[Quorums]]
- [[Vector Clocks]]
- [[Lamport Timestamps]]
## Replication & Transactions
- [[Replication Strategies]]
- [[Gossip Protocols]]
- [[Leader-based Replication]]
- [[Distributed Transactions]]
- [[Two-Phase Commit (2PC)]]
- [[Three-Phase Commit (3PC)]]
- [[Saga Pattern]]
- [[State Machine Replication]]
## Fault Tolerance & Recovery
- [[Failure Detectors]]
- [[Partial Failure]]
- [[Split-Brain Scenarios]]
- [[Duplicate Message Delivery]]
- [[Network Partition]]
- [[Retry, Timeout, Backoff]]
- [[Circuit Breakers]]
## Real-world Patterns & Tools
- [[Leader Election]]
- [[Distributed Locking]]
- [[Message Queues (Kafka, RabbitMQ)]]
- [[Coordination Tools (Zookeeper, etcd)]]
- [[Distributed Datastores (Spanner, Cassandra)]]
- [[Distributed File Systems (GFS, HDFS)]]
## Observability & Testing
- [[Distributed Tracing]]
- [[Monitoring & Logging]]
- [[Jepsen Testing]]
- [[TLA+ for Verification]]
## Case Studies
- [[Google Spanner]]
- [[Apache Kafka]]
- [[Zookeeper]]
- [[Kubernetes Control Plane]]
- [[Raft in Consul]]