distributed-system-theory-for-software-engineers
distributed-system-theory-for-software-engineers copied to clipboard
Distributed System Theory for Software Engineers
Failure Modes
Clock
How you decide whether an event happened before another event in the absence of any shared clock
- [x] Lamport clocks
- [x] Vector clock
- [x] 分布式数据库中为什么要使用 Vector Clock?
Fault Tolerance
- The quorum technique for ensuring single-copy serializability
- different fault-tolerance properties
- How eventual consistency, and other techniques, seek to avoid this tension at the cost of weaker guarantees about system behaviour
- [ ] Dynamo
- [ ] Life Beyond Transactions
Basic primitives
- Leader election
- [x] Bully algorithm
- Consistent snapshotting
- Consensus
- 2PC
- Paxos
- Distributed state machine replication
Fundamental Results
Real systems
Not Google
First Step
- Distributed systems for fun and profit by Mikito Takada
- Notes on Distributed Systems for Young Bloods
- A Note on Distributed Computing
- Fallacies of distributed computing