Implementing the Raft distributed consensus protocol in Go

from blog Notes on software development, | ↗ original
As part of bringing myself up-to-speed after joining TigerBeetle, I wanted some background on how distributed consensus and replicated state machines protocols work. TigerBeetle uses Viewstamped Replication. But I wanted to understand all popular protocols and I decided to start with Raft. We'll implement two key components of Raft in this post...