Distributed Consensus with Raft

04:30 PM - 05:25 PM on July 16, 2016, Room CR7

John Feminella

Audience level:


Getting people to agree to things is sometimes hard. But getting computers to agree is even harder -- this is the "consensus problem". When the computers are far apart, we need to achieve distributed consensus, which is especially pernicious. How do we do it, why is this important for many Python applications, and how can an algorithm called Raft help us out?


Getting people to agree to things is sometimes hard. But implementing consensus with computers is harder. And distributed consensus with computers is ​really​ hard. How do we do it?

In this talk, we’ll explore one idea of how distributed consensus can work, which the authors call ​Raft_, with several popular open-source implementations. Along the way, we’ll learn about why consensus is challenging, how Raft works in practice, and see a real live example of a system that depends on Raft.

By the end, attendees will feel comfortable with the principles of distributed consensus, have an appreciation of the challenges involved, and gain a survey understanding of Raft as one of the solutions available.