paros
paros is a learning project. It implements the Paxos family of consensus algorithms in Rust, and it is built and validated with deterministic simulation testing (DST). It is a work in progress and not for production.
The name refers to two Greek islands: Paros and Paxos, the island where Leslie Lamport set the consensus algorithm.
This site has two parts:
- parosd, the system: a multi-tenant journal service with four calls
(
Write,Read,Truncate,SetLeader). - The Paxos implementation: what
paros-coreandparosdo, told as a learning path, from the classic two phases to the difficult parts around them.
paros play is an interactive game. It runs the real paros-core in your browser.
You control the network, the clock and each role.
The sandbox runs a paros universe in your browser: the same code as
parosd on a simulated network, disk and clock. You form a cell, write values, add machines and
crash them, then replay the run from its seed and its action log.