An industrial-grade C++ implementation of RAFT consensus algorithm and replicated state machine based on brpc. braft is designed and implemented for scenarios demanding for high workload and low overhead of latency, with the consideration for easy-to-understand concepts so that engineers inside Baidu can build their own distributed systems individually and correctly.
It's widely used inside Baidu to build highly-available systems, such as:
Build brpc which is the main dependency of braft.
Compile braft with cmake
$ mkdir bld && cd bld && cmake .. && make
Play braft with examples.
Installing from vcpkg
You can download and install braft
using the vcpkg dependency manager:
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install braft
The braft
port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.