OpenRaft

Advanced Raft in 🦀 Rust using Tokio. Please ⭐ on GitHub!

Crates.io docs.rs DeepWiki guides Discord Chat
CI Coverage Status License Crates.io Crates.io

This project intends to improve raft as the next-generation consensus protocol for distributed data storage systems (SQL, NoSQL, KV, Streaming, Graph ... or maybe something more exotic).

Currently, openraft is the consensus engine of meta-service cluster in databend.

Whatever your style, we're here to support you. 🚀 Let's make something awesome together!

Status

API status

Versions

Roadmap

Performance

The benchmark is focused on the OpenRaft framework itself and is run on a minimized store and network. This is NOT a real world application benchmark!!!

Single writes:

clients put/s
4096 3,548,000
1024 3,006,000
256 1,808,000
64 912,000
1 33,000

Batch writes (4 entries per batch):

clients put/s
4096 5,615,000

For benchmark detail, go to the ./benchmarks/minimal folder.

Features

Functionality:

Who uses it

Contributing

Check out the CONTRIBUTING.md guide for more details on getting started with contributing to this project.

Contributors

Made with contributors-img.

License

OpenRaft is licensed under the terms of the MIT License or the Apache License 2.0, at your choosing.