All Projects → baidu → Braft

baidu / Braft

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

Programming Languages

C++
36643 projects - #6 most used programming language
shell
77523 projects
CMake
9771 projects
clojure
4091 projects
Starlark
911 projects

Projects that are alternatives of or similar to Braft

Dragonboat
Dragonboat is a high performance multi-group Raft consensus library in pure Go.
Stars: ✭ 3,983 (+34.38%)
Mutual labels:  distributed-storage, raft, raft-protocol, distributed-consensus
Atomix
A reactive Java framework for building fault-tolerant distributed systems
Stars: ✭ 2,182 (-26.38%)
Mutual labels:  raft, raft-consensus-algorithm, raft-protocol
raft
raft is a golang library that provides a simple, clean, and idiomatic implementation of the Raft consensus protocol
Stars: ✭ 35 (-98.82%)
Mutual labels:  raft, raft-protocol, raft-consensus-algorithm
Raft Java
Raft Java implementation which is simple and easy to understand.
Stars: ✭ 783 (-73.58%)
Mutual labels:  distributed-storage, raft, raft-consensus-algorithm
distmq
Distributed Message Queue based on Raft
Stars: ✭ 32 (-98.92%)
Mutual labels:  raft, distributed-storage
Kites
🪁 A consistency, partition tolerance completed distributed KV store, implementation of the Raft distributed consensus protocol and Kotlin.
Stars: ✭ 41 (-98.62%)
Mutual labels:  raft, raft-consensus-algorithm
Rafty
Implementation of RAFT consensus in .NET core
Stars: ✭ 182 (-93.86%)
Mutual labels:  raft, raft-consensus-algorithm
Copycat
A novel implementation of the Raft consensus algorithm
Stars: ✭ 551 (-81.41%)
Mutual labels:  raft, raft-consensus-algorithm
Ra
A Raft implementation for Erlang and Elixir that strives to be efficient and make it easier to use multiple Raft clusters in a single system.
Stars: ✭ 478 (-83.87%)
Mutual labels:  raft, raft-consensus-algorithm
Dotnext
Next generation API for .NET
Stars: ✭ 379 (-87.21%)
Mutual labels:  raft, raft-consensus-algorithm
Sharkstore
distributed key - value persisted storage system
Stars: ✭ 165 (-94.43%)
Mutual labels:  distributed-storage, raft
distkv
Distributed KV Storage System based on Raft and RocksDB, can be use to store small files, like images.
Stars: ✭ 50 (-98.31%)
Mutual labels:  raft, distributed-storage
huffleraft
Replicated key-value store driven by the raft consensus protocol 🚵
Stars: ✭ 32 (-98.92%)
Mutual labels:  raft, raft-consensus-algorithm
Leto
A key value storage example powered by hashicorp raft and BadgerDB
Stars: ✭ 73 (-97.54%)
Mutual labels:  raft, raft-consensus-algorithm
6.824 2018
MIT 6.824 2018 lab. MIT6.824分布式系统(2018秋)
Stars: ✭ 59 (-98.01%)
Mutual labels:  raft, raft-consensus-algorithm
Mit 6.824 2018
Solutions to mit 6.824 2018
Stars: ✭ 158 (-94.67%)
Mutual labels:  raft, raft-consensus-algorithm
Dragonboat Example
Examples for Dragonboat
Stars: ✭ 104 (-96.49%)
Mutual labels:  raft, raft-consensus-algorithm
Cete
Cete is a distributed key value store server written in Go built on top of BadgerDB.
Stars: ✭ 153 (-94.84%)
Mutual labels:  raft, raft-consensus-algorithm
Verdi Raft
An implementation of the Raft distributed consensus protocol, verified in Coq using the Verdi framework
Stars: ✭ 143 (-95.18%)
Mutual labels:  raft
Chubaofs
ChubaoFS (abbrev. CBFS) is a cloud native distributed file system and object store.
Stars: ✭ 2,482 (-16.26%)
Mutual labels:  distributed-storage

Build Status


Overview

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:

  • Storage systems: Key-Value, Block, Object, File ...
  • SQL storages: HA MySQL cluster, distributed transactions, NewSQL systems ...
  • Meta services: Various master modules, Lock services ...

Getting Started

  • Build brpc which is the main dependency of braft.

  • Compile braft with cmake

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

Docs

Discussion

  • Add Weixin id zhengpf__87 or xiongk_2049 with a verification message 'braft', then you will be invited into the discussion group.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].