Our great sponsors
-
-
tigerbeetle
The distributed financial transactions database designed for mission critical safety and performance.
Viewstamped Replication is a consensus algorithm that predates Paxos and Raft, but has recently gained more attention because of [TigerBeetle](https://github.com/tigerbeetledb/tigerbeetle). They implement VSR in Zig https://github.com/tigerbeetledb/tigerbeetle/tree/main/src/vsr but I wanted to explore what it would take to have VSR for Rust.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
My perspective is that VSR seems much more easier to grasp than Raft based on reading and contributing to Ilya Andreev's Little Raft. The selection of primary replica ("leader election" in Raft), for example, is dead-simple in VSR (you maintain a deterministic order of nodes and round-robin). Also, VSR seems to do a better job at decoupling the different scenarios at protocol level (backup fell behind, crashed, etc.) whereas in Raft the AppendEntries is a big hammer that does everything. I have very little experience on Paxos so can't really compare it to VSR.