Skip to content

stateIs0/sofa-jraft

 
 

Repository files navigation

SOFAJRAFT

Build Status license

Intro

An industrial-grade java implementation of RAFT consensus algorithm. It's ported from baidu's open source project braft and optimized for java language/runtime

  1. use sofa-bolt as RPC framework.
  2. use rocksdb as log storage.
  3. use disruptor for batch processing.

Also we implement some features that braft missing:

  1. replication pipeline optimistic.
  2. readIndex for linearizable read.
  3. distributed embed KV storage engine.

Acknowledgments

Thanks braft for providing the amazing C++ implementation!

License

braft is Apache License 2.0, jraft is the same with it.

We also reference some open source project code (may have a few modifications), including:

  1. NonBlockingHashMap/NonBlockingHashMapLong in jctool
  2. Pipeline design in netty, HashedWheelTimer, etc.
  3. The codec of utf8 string in protobuf

About

An industrial-grade java implementation of RAFT consensus algorithm.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.9%
  • Shell 0.1%