TODO: Write a description here
-
Add the dependency to your
shard.yml
:dependencies: raft: github: your-github-user/raft
-
Run
shards install
require "raft"
TODO: Write usage instructions here
This shard implements the specification laid out in the raft paper written by Diego Ongaro and John Ousterhout.
It uses
Name | Size (160 Bits total) |
---|---|
Type Indicator | 32 Bits |
Candidate ID | 32 Bits |
Last log index | 32 Bits |
Last log term | 32 Bits |
Name | Size (224 Bits total) |
---|---|
Type indication | 32 Bits |
Log Type Indicator | 32 Bits |
Term | 32 Bits |
Leader ID | 32 Bits |
Leader Commit | 32 Bits |
Previous Log Term | 32 Bits |
Previous Log Index | 32 Bits |
Entries | 2+ Bits |
Name | Size |
---|---|
Type Indicator | 32 Bits |
Term | 32 Bits |
Vote Granted | 32 Bits |
Name | Size |
---|---|
Type Indicator | 32 Bits |
Term | 32 Bits |
Success | 32 Bits |
- Fork it (https://github.com/your-github-user/raft/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
- Carl Frederick - creator and maintainer