Can’t we all just agree?

(Post updated to add links to write-ups of the papers now that the series is complete).

We had to get here at some point! Inspired by the recent publication of Raft Refloated I thought it would be a good time to do a mini-series on consensus. Initially I’d planned out a series of 5 papers on this topic, but after some discussion with Jonas Bonér (look out for his Desert Island Papers selections coming soon) I expanded it to 10 papers over the coming two weeks.

Here’s the plan:

week one-

week two-

Watch out for the daily notifications on twitter or subscribe via email to make sure you never miss an issue.

30 thoughts on “Can’t we all just agree?

  1. I probably wouldn’t bother with Part-Time Parliament. IMO, that paper has been responsible for much of Paxos’ reputation as hard to understand. It is instead, good fun to read *after* you’ve read and understood all the other Paxos papers. Paxos Made Simple is very good, as are the variations – Cheap Paxos and Fast Paxos. Consensus on Transaction Commit is also essential.

    FWIW, I believe Paxos is not particularly complex and there is really little need for protocols like Raft to exist. That said, many of the papers on Paxos are written from the perspective of a lifetime of work and understanding of distributed consensus issues and so demand investment. It seems to me, the ideal outcome from studying and trying to implement these ideas is the realisation of which variations you need, which optimisations you want and a fundamental understanding of what the responses are to the various categories of failure your systems can tolerate. These papers and protocols are not designed for unthinking “implement this, and you’ll be fine” approaches. They are much better than that.

  2. Such a large body of work in this space! Hopefully I’ll get to cover these in time too, thanks for the pointers. I like the ‘parliament’ paper, but certainly not as the only source! (Same with the original VR paper – revisited version is much better in my view).

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.