S6 · Build a Replicated Key-Value Store (Dynamo-style)

One key-value server: a port, a protocol, a table in memory and a log underneath. This project runs many of them and answers the question the drawing never had to: which ones hold each key, and what happens when one of them dies.
Before you start. You’ve built S2, a door in front of identical servers, and S3, a key-value server. Both lessons end by suggesting you put the first in front of three copies of the second. This project starts with what goes wrong when you do. The slow build of the fix, one lesson per stage, is Build Your Own Dynamo in From Scratch; this page turns it into one repo and does not repeat its detail. Enough Go is an optional first read.