Back to Resources

Consensus Algorithm Research Resources

From theoretical foundations to practice

Theoretical Resources

Distributed consensus revised
Heidi Howard, 2019 Advanced
4.5
A PhD thesis revisiting distributed consensus algorithms and their practical implementations.
Download PDF
Viewstamped Replication Revisited
Leslie Lamport, 2012 Intermediate
5.0
This paper presents an updated version of Viewstamped Replication, a replication technique that handles failures in which nodes crash. It describes how client requests are handled, how the group reorganizes when a replica fails, and how a failed replica is able to rejoin the group. The paper also describes a number of important optimizations and presents a protocol for handling reconfigurations that can change both the group membership and the number of failures the group is able to handle.
Download PDF
Paxos Made Simple
Leslie Lamport, 2001 Advanced
5.0
Simplified explanation of the Paxos algorithm, making it more accessible for practical implementation in distributed systems.
Download PDF
In Search of an Understandable Consensus Algorithm
Diego Ongaro et al., 2014 Advanced
5.0
Raft is a consensus algorithm for managing a replicated log. It produces a result equivalent to (multi-)Paxos, and it is as efficient as Paxos, but its structure is different from Paxos; this makes Raft more understandable than Paxos and also provides a better foundation for building practical systems.
Download PDF
Mencius: Building Efficient Replicated State Machines for WANs
Yanhua Mao, 2008 Intermediate
5.0
We present a protocol for general state machine replication - a method that provides strong consistency - that has high performance in a wide-area network. In particular, our protocol Mencius has high throughput under high client load and low latency under low client load even under changing wide-area network environment and client load.
Download PDF
State Machine Replication for Wide Area Networks
Yanhua Mao, 2010 Advanced
4.5
A PhD thesis on state machine replication for wide area networks.
Download PDF

Practical Resources

Building and deploying MySQL Raft at Meta
Anirban Rahut et al., 2023 Beginner
5.0
A case study on deploying MySQL Raft at Meta for improved distributed consensus.
View Article
Paxos Made Live - An Engineering Perspective
Tushar Chandra et al., 2007 Beginner
5.0
We describe our experience in building a fault-tolerant database using the Paxos consensus algorithm. Despite the existing literature in the field, building such a database proved to be non-trivial. We describe selected algorithmic and engineering problems encountered, and the solutions we found for them. Our measurements indicate that we have built a competitive system.
Download PDF
Paxos for System Builders
Jonathan Kirsch et al., 2008 Beginner
5.0
This paper presents a complete specification of the Paxos replication protocol such that system builders can understand it and implement it. We evaluate the performance of a prototype implementation and detail the safety and liveness properties guaranteed by our specification of Paxos.
Download PDF
Using Paxos to Build a scalable, consistent, and highly available datastore
Rao et al., 2011 Intermediate
5.0
A case study on building a scalable and consistent datastore using Paxos.
Download PDF
Designing an efficient replicated log store with consensus protocol
Jung-Sang Ahn et al., 2019 Intermediate
4.5
A study on designing efficient replicated log stores using consensus protocols.
Download PDF
JPaxos: state machine replication based on the Paxos protocol
2011 Intermediate
4.5
A technical report on implementing state machine replication using the Paxos protocol.
Download PDF
Tuning Paxos for high-throughput with batching and pipelining
N. Santos and A. Schiper, 2012 Intermediate
5.0
A study on improving Paxos performance through batching and pipelining.
Download PDF
FlexiRaft: Flexible Quorums with Raft
Ritwik Yadav and Anirban Rahut, 2023 Intermediate
5.0
A study on flexible quorum systems for Raft-based distributed consensus.
Download PDF