https://github.com/acl-dev/libraft
libraft base on acl foundation framework implememt Raft Consensus Algorithm.
https://github.com/acl-dev/libraft
raft-consensus-algorithm
Last synced: about 1 month ago
JSON representation
libraft base on acl foundation framework implememt Raft Consensus Algorithm.
- Host: GitHub
- URL: https://github.com/acl-dev/libraft
- Owner: acl-dev
- License: lgpl-3.0
- Created: 2017-06-01T02:02:52.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-06-23T15:18:55.000Z (almost 9 years ago)
- Last Synced: 2024-05-21T00:59:35.971Z (almost 2 years ago)
- Topics: raft-consensus-algorithm
- Language: C++
- Homepage:
- Size: 804 KB
- Stars: 4
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## what is libraft ?
libraft base on [acl](https://github.com/acl-dev/acl) foundation framework
implememt [Raft Consensus Algorithm](https://raft.github.io/).
with libraft you can build a high availability and data consistency system much easier.
## libraft implementations
* Leader Election
* Log Replication
* Log Compaction
* Membership Changes (todo)
## build it
* build acl
```bash
git clone https://github.com/acl-dev/acl.git
cd acl/
make build_one
```
* build http_rpc
```bash
git clone https://github.com/acl-dev/microservice.git
cd microservice/
mkdir build
cd build/
cmake .. -DACL_ROOT=$(pwd)/../../acl
make
```
* [build protobuf](https://github.com/google/protobuf/blob/master/src/README.md)
* build libraft
```bash
git clone https://github.com/acl-dev/libraft.git
cd libraft
./build.sh
```
## how to use libraft
to see the demo [memkv](https://github.com/acl-dev/libraft/tree/master/demo/)
## contact us
In use if you have any question, welcome feedback to me, you can use the following contact information to communicate with me
* email: niukey@qq.com
* QQ group : 242722074