3 ms·
You are not alone: https://news.ycombinator.com/item?id=23123701 https://news.ycombinator.com/item?id=23123701 and https://youtu.be/QVvFVwyElLY?t=2502 https://y
by ignoramous 6y ago
You are not alone: https://news.ycombinator.com/item?id=23123701 https://news.ycombinator.com/item?id=23123701 and https://youtu.be/QVvFVwyElLY?t=2502 https://youtu.be/QVvFVwyElLY?t=2502
Like TFA points out, distributed consensus is punishingly hard. AWS relied on TLA+ to prove consensus in DynamoDB and other systems https://lamport.azurewebsites.net/tla/formal-methods-amazon.pdf https://lamport.azurewebsites.net/tla/formal-methods-amazon....
Interestingly, Kinesis [0] and SQS (?) avoid consensus for those same reasons.
[0] https://news.ycombinator.com/item?id=25239100 https://news.ycombinator.com/item?id=25239100
- mjb 6y agoChain Replication (and friends) are vastly simpler than Paxos (and friends) in many ways, but do have the same requirement for determinism. That's because chain replicated systems typically need to be confluent (see https://pathelland.substack.com/p/dont-get-stuck-in-the-con-game-v2 https://pathelland.substack.com/p/dont-get-stuck-in-the-con-...), which means that all the replicas need to have the same value in them when replication is done. Conceptually simpler, for sure, but many of the same challenges remain.