Implementation and evaluation of Paxos and Raft distributed consensus protocols
Batra, Rahul · Texas ScholarWorks (Texas Digital Library) · 2017
This reports presents an implementation and evaluation of two distributed consensus protocols, Paxos and Raft, in a simulated network environment. Consensus protocols are fundamental in building distributed services. We show how distributed services can be viewed as state machines, and made fault-tolerant by replicating state machines on multiple servers and associating a command log with each state machine. The command log is kept consistent with other state machines log’s through distributed consensus protocol. We implemented Paxos and Raft consensus protocols and a fault-tolerant key-value service in GO language, and then compared the two protocols. Our implementation of Paxos performs better when load is lower. Otherwise, Raft performs better.