rystsov/caspaxos

CASPaxos: Replicated State Machines without logs

TeX

108

98 commits

updated Oct 20, 2018

See the code

README

CASPaxos

CASPaxos is a wait-free, linearizable, multi-writer multi-reader register in unreliable, asynchronous networks supporting arbitrary update operations including compare-and-set (CAS). The register acts as a replicated state machine providing an interface for changing its value by applying an arbitrary user-provided function (a command). Unlike Multi-Paxos and Raft which replicate the log of commands, CASPaxos replicates state, thus avoiding associated complexity, reducing write amplification, increasing concurrency of disk operations and hardware utilization.

The paper describes CASPaxos, proves its safety properties and evaluates the characteristics of a CASPaxos-based prototype of key-value storage.

Paper

https://github.com/rystsov/caspaxos/blob/master/latex/caspaxos.pdf

Implementations

The algorithm is new so most implementations are actively being developed.

Talks

Articles

caspaxos
paxos

Contributors

rystsov

92 commits

komuw

3 commits

nickva

2 commits

moolen

1 commits

rystsov/caspaxos

CASPaxos: Replicated State Machines without logs

TeX

108

98 commits

updated Oct 20, 2018

See the code

README

CASPaxos

CASPaxos is a wait-free, linearizable, multi-writer multi-reader register in unreliable, asynchronous networks supporting arbitrary update operations including compare-and-set (CAS). The register acts as a replicated state machine providing an interface for changing its value by applying an arbitrary user-provided function (a command). Unlike Multi-Paxos and Raft which replicate the log of commands, CASPaxos replicates state, thus avoiding associated complexity, reducing write amplification, increasing concurrency of disk operations and hardware utilization.

The paper describes CASPaxos, proves its safety properties and evaluates the characteristics of a CASPaxos-based prototype of key-value storage.

Paper

https://github.com/rystsov/caspaxos/blob/master/latex/caspaxos.pdf

Implementations

The algorithm is new so most implementations are actively being developed.

Talks

Articles

caspaxos
paxos

Contributors

rystsov

92 commits

komuw

3 commits

nickva

2 commits

moolen

1 commits

Languages

TeX

81.2%

JavaScript

8.1%

Shell

7.2%

Dockerfile

1.8%

Go

1.6%