{"id":13418976,"url":"https://github.com/baidu/braft","last_synced_at":"2025-05-13T23:05:27.077Z","repository":{"id":37336667,"uuid":"120606279","full_name":"baidu/braft","owner":"baidu","description":"An industrial-grade C++ implementation of RAFT consensus algorithm based on brpc,  widely used inside Baidu to build highly-available distributed systems.","archived":false,"fork":false,"pushed_at":"2024-10-25T07:22:09.000Z","size":4751,"stargazers_count":4095,"open_issues_count":187,"forks_count":897,"subscribers_count":184,"default_branch":"master","last_synced_at":"2025-04-20T22:02:45.482Z","etag":null,"topics":["distributed-consensus","distributed-storage","raft","raft-consensus-algorithm","raft-cpp","raft-cxx","raft-protocol","state-machine-replication"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baidu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-07T11:25:57.000Z","updated_at":"2025-04-19T14:53:49.000Z","dependencies_parsed_at":"2024-01-07T03:44:38.101Z","dependency_job_id":"c18bcc2e-8987-46f6-bc2d-1db75c9d40c6","html_url":"https://github.com/baidu/braft","commit_stats":null,"previous_names":["brpc/braft"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baidu%2Fbraft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baidu%2Fbraft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baidu%2Fbraft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baidu%2Fbraft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baidu","download_url":"https://codeload.github.com/baidu/braft/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254040676,"owners_count":22004592,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["distributed-consensus","distributed-storage","raft","raft-consensus-algorithm","raft-cpp","raft-cxx","raft-protocol","state-machine-replication"],"created_at":"2024-07-30T22:01:09.621Z","updated_at":"2025-05-13T23:05:22.065Z","avatar_url":"https://github.com/baidu.png","language":"C++","funding_links":[],"categories":["TODO scan for Android support in followings","C++","\u003ca name=\"cpp\"\u003e\u003c/a\u003eC++","Raft - Engineering"],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/baidu/braft.svg?branch=master)](https://travis-ci.org/baidu/braft)\n\n---\n\n# Overview\nAn industrial-grade C++ implementation of [RAFT consensus algorithm](https://raft.github.io/) and [replicated state machine](https://en.wikipedia.org/wiki/State_machine_replication) based on [brpc](https://github.com/brpc/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.\n\nIt's widely used inside Baidu to build highly-available systems, such as:\n* Storage systems: Key-Value, Block, Object, File ...\n* SQL storages: HA MySQL cluster, distributed transactions, NewSQL systems ...\n* Meta services: Various master modules, Lock services ...\n\n# Getting Started\n\n* Build [brpc](https://github.com/brpc/brpc/blob/master/docs/cn/getting_started.md) which is the main dependency of braft.\n\n* Compile braft with cmake\n  \n  ```shell\n  $ mkdir bld \u0026\u0026 cd bld \u0026\u0026 cmake .. \u0026\u0026 make\n  ```\n\n* Play braft with [examples](./example).\n\n* Installing from vcpkg\n  \n  You can download and install `braft` using the [vcpkg](https://github.com/Microsoft/vcpkg) dependency manager:\n  ```sh\n  git clone https://github.com/Microsoft/vcpkg.git\n  cd vcpkg\n  ./bootstrap-vcpkg.sh\n  ./vcpkg integrate install\n  ./vcpkg install braft\n  ```\n  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](https://github.com/Microsoft/vcpkg) on the vcpkg repository.\n\n# Docs\n\n* Read [overview](./docs/cn/overview.md) to know what you can do with braft.\n* Read [benchmark](./docs/cn/benchmark.md) to have a quick view about performance of braft\n* [Build Service based on braft](./docs/cn/server.md)\n* [Access Service based on braft](./docs/cn/client.md)\n* [Cli tools](./docs/cn/cli.md)\n* [Replication Model](./docs/cn/replication.md)\n* Consensus protocol:\n  * [RAFT](./docs/cn/raft_protocol.md)\n  * [Paxos](./docs/cn/paxos_protocol.md)\n  * [ZAB](./docs/cn/zab_protocol.md)\n  * [QJM](./docs/cn/qjm.md)\n\n# Discussion\n\n* Add Weixin id ***zhengpf__87*** or ***xiongk_2049*** with a verification message '**braft**', then you will be invited into the discussion group. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaidu%2Fbraft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbaidu%2Fbraft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaidu%2Fbraft/lists"}