4 releases

0.2.2 Nov 6, 2023
0.2.1 Jul 4, 2023
0.2.0 Jun 27, 2023
0.1.0 May 5, 2023

#687 in Algorithms

Download history 42/week @ 2024-02-17 57/week @ 2024-02-24 25/week @ 2024-03-02 27/week @ 2024-03-09 19/week @ 2024-03-16 12/week @ 2024-03-23 41/week @ 2024-03-30 30/week @ 2024-04-06 23/week @ 2024-04-13 14/week @ 2024-04-20

108 downloads per month
Used in 2 crates

Apache-2.0

195KB
4K SLoC

OmniPaxos

ci Cargo Documentation License

OmniPaxos is an in-development replicated log library implemented in Rust. OmniPaxos aims to hide the complexities of consensus to provide users a replicated log that is as simple to use as a local log.

Similar to Raft, OmniPaxos can be used to build strongly consistent services such as replicated state machines. Additionally, the leader election of OmniPaxos offers better resilience to partial connectivity and more flexible and efficient reconfiguration compared to Raft.

An OmniPaxos node is implemented as a plain Rust struct. This allows it to be used with any desired storage, network, and runtime implementations.

For more detailed explanations and tutorials showcasing our features, check out https://omnipaxos.com.

To learn more about OmniPaxos, check out our EuroSys'23 paper.

For a tutorial on OmniPaxos, checkout our blog post and video of how to build a distributed RocksDB here.

License

This project is licensed under the Apache-2.0 license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in OmniPaxos by you shall be licensed as Apache-2.0, without any additional terms or conditions.

Dependencies

~0–8MB
~56K SLoC