Visualization of a Paxos-based distributed state machine
http://rystsov.info/2016/05/01/paxos.html
- “Paxos made simple” paper (2001) - algorithm how to transform any FSM into a fault-tolerant distributed system:
- Build linearizable distributed write-once register (based on his Sinod protocol)
- Build linearizable distributed append-only log (sequence of write-once regs)
- Use distributed append-only log to store the sequence of all events leading a system to the current state instead of storing the state itself
- logs - is natural, but need GC or snapshots. Something else to model FSM?
- TreodeDB used Synod-based distributed rewritable register
- riak_ensemble (?)
- proved FSM over distributed variable
- Log-based solutions are more popular because they had the advantage of time. Until Vertical Paxos (2009), log replication was the only consensus protocol capable of cluster membership change -> the only solution.
- Raft’s joint consensus membership change