Skip to content
forked from baidu/braft

An industrial-grade C++ implementation of RAFT consensus algorithm based on brpc, widely used inside Baidu to build highly-available distributed systems.

License

Notifications You must be signed in to change notification settings

Edward-xk/braft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A fully-functional industrial-grade C++ implementation of RAFT consensus algorithm based on brpc.

braft is an approach of replicated state machine. It is widely used inside Baidu to build highly available distributed systems, such as:

  • Various kinds of distributed storage: block, file, object, NoSQL, etc.
  • Highly available MySQL cluster.
  • Distributed transaction and NewSQL system.
  • Meta services in cloud computing to manage a large scale of clusters, virtual machines and containers.

braft is designed and implemented for high workload and high throughput scenarios. And it makes efforts to reduce overhead of latency. With braft you can easily build a distributed system just like writing a standalone server by defining your business logic as a finite state machine, and it's high performanced as well.

Getting Started

  • Build brpc since braft is built upon brpc and bthread

  • Compile braft with cmake

    $ mkdir build && cd build && cmake .. && make
  • Play braft with examples.

Docs

About

An industrial-grade C++ implementation of RAFT consensus algorithm based on brpc, widely used inside Baidu to build highly-available distributed systems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 92.8%
  • Shell 3.8%
  • CMake 2.0%
  • Clojure 1.1%
  • Starlark 0.3%