Skip to content

fpaxos/fpaxos.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

Flexible Paxos is the simple observation that it is not necessary to require all quorums in Paxos to intersect. It is sufficient to require that the quorum used by the leader election phase (phase-1) will overlap with the quorums used by previous replication phases (phase-2). Majority quorums are one such way to meet this requirement, but many more exist. Thus, Paxos is just a single point on a broad spectrum of possibilities for safely reaching distributed consensus. To learn more about Flexible Paxos and how it is used to build more resilient distributed systems, take a look at the papers, talks, and open source projects below.

Papers

Articles & Blog Posts

Talks

Code

  • LibFPaxos - A patch to LibPaxos3 which exposes quorum size as a configuration parameter. Licensed under 3-clause BSD.
  • LibFPaxos Benchmarks- Scripts for reproducing the LibFPaxos experiments from the Flexible Paxos paper using Mininet. Licensed under MIT.
  • Flexible Paxos TLA+ - TLA+ specification of single-valued Flexible Paxos. Licensed under MIT.
  • Flexible Raft TLA+ - TLA+ specification of Raft, modified for flexible quorums. Licensed under MIT.
  • LogDevice - A distributed log storage systems from Facebook
  • Paxi - Simulation framework for distributed consensus algorithms which includes prototypes of various algorithms including Flexible Paxos and Fast Flexible Paxos
  • FrankenPaxos - Another distributed consensus simulator which includes prototypes of various consensus algorithm including Flexible Paxos
  • FlexibleZoo - Zookeeper fork by Max Meldrum
  • FPaxosPython - A (naive) implementation of Flexible Paxos