BRAFT

基于 brpc 的 RAFT 共识算法的工业级 C++ 实现,在百度内部广泛用于构建高可用的分布式系统。「An industrial-grade C++ implementation of RAFT consensus algorithm based on brpc, widely used inside Baidu to build highly-available distributed systems.」

Github星跟踪图

概述

braft 是基于 brpc 的 RAFT 共识算法和复制状态机的工业级 C++ 实现。braft 的设计和实现是针对要求高工作负载和低延迟开销的场景,考虑到概念的简单易懂,使百度内部的工程师可以单独和正确地建立自己的分布式系统。

它在百度内部被广泛用于构建高可用的系统,例如:

  • 存储系统。键值、块、对象、文件......。
  • SQL 存储系统。HA MySQL 集群,分布式交易,NewSQL 系统...
  • 元服务。各种主模块、锁服务 ...

入门

  • 构建 brpc 是 braft 的主要依赖
  • Compile braft with cmake
    $ mkdir bld && cd bld && cmake .. && make        
  • 通过 examples 学习 braft。

文档

讨论

  • 添加微信 ID zhengpf__87 或 xiongk_2049,并附上验证信息 'braft',然后你将被邀请进入讨论组。

概览

名称与所有者baidu/braft
主编程语言C++
编程语言CMake (语言数: 5)
平台Linux
许可证Apache License 2.0
发布数6
最新版本名称v1.1.2 (发布于 )
第一版名称v1.0.0 (发布于 )
创建于2018-02-07 11:25:57
推送于2024-04-10 06:53:12
最后一次提交2024-02-21 16:36:31
星数3.8k
关注者数185
派生数854
提交数698
已启用问题?
问题数299
打开的问题数126
拉请求数92
打开的拉请求数36
关闭的拉请求数22
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?

Build Status


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

去到顶部