Skip to content

Latest commit

 

History

849 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sorock

Crates.io API doc mdBook Documentation CI codecov MIT licensed

A Multi-Raft implementation in Rust.

Features

  • Supports Multi-Raft. Mutliple Raft processes can coexist in a single OS process so they can share resources efficiently.
    • Tested with 1000 shards per node.
    • Heartbeats in shards are batched to reduce the network overhead.
  • Based on Tonic and efficient gRPC streaming is exploited in log replication and snapshot.
  • Efficient backend implementation using redb.
    • Writes in shards are batched in one transaction.
  • Phi Accrual Failure Detector is used for leader failure detection.
    • The adaptive algorithm allows you to not choose a fixed timeout number before deployment and to deploy Raft node in even geo-distributed environment where the latency between nodes isn't identical.

Related Projects

  • phi-detector: Implementation of Phi Accrual Failure Detector in Rust.

Author

Name: Akira Hayakawa
Email: ruby.wktk@gmail.com

About

A Multi-Raft implementation in Rust.

Topics

Resources

Stars

200 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages