Distributed Consensus is everywhere! Even if not obvious at first, most apps nowadays are distributed systems, and these sometimes have to "agree on a value", this is where consensus algorithms come in. In this session we'll look at the general problem and solve a few example cases using the RAFT algorithm implemented using Akka's Actor and Cluster modules.
The world of programming is leaning more and more towards distributed apps. Even if think you're not knowingly developing "an distributed app", in fact you probably are - because of external dependencies on other providers services. In the world of Distributed Programming the problem of making sure that multiple servers "see the same value" has been known for a long time, and there are quite a few ways to solve it.
In this session we'll talk why you should care about consensus, where to apply it (or where it is applied for you by a database or middleware!) and how one would go about implementing a distributed consensus protocol by looking at the RAFT consensus algorithm and implement it using Akka Clustering.