hashring
dragonboat
hashring | dragonboat | |
---|---|---|
1 | 2 | |
557 | 4,957 | |
- | - | |
10.0 | 6.4 | |
almost 4 years ago | 4 months ago | |
Go | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
hashring
-
Is it possible to have more than 1 master available for writes in a raft system?
What is commited to config group log is then base to spin out multi-group raft; I'm using consistent hashing currently because of API: https://github.com/serialx/hashring but soon I plan to migrate to rendezvous hashing either by finding out similar library or by rewriting API hashring to rendezvous (algorithm is quite trivial so it isn't big deal)
dragonboat
-
Pebble - as a key/value db
Pebble is the default log storage engine for a multi-raft library named Dragonboat. It was chosen to replace RocksDB and it seems to work well. https://github.com/lni/dragonboat
-
Is it possible to have more than 1 master available for writes in a raft system?
This is the best open source implementation I've seen that does what you're asking about: https://github.com/lni/dragonboat
What are some alternatives?
memberlist - Golang package for gossip based membership and failure detection
raft - Golang implementation of the Raft consensus protocol
dragonboat-example - Examples for Dragonboat
doublejump - A revamped Google's jump consistent hash
torrent - Full-featured BitTorrent client package and utilities
DHT - BitTorrent DHT Protocol && DHT Spider.
resgate - A Realtime API Gateway used with NATS to build REST, real time, and RPC APIs, where all your clients are synchronized seamlessly.
etcd - Distributed reliable key-value store for the most critical data of a distributed system
serf - Service orchestration and management tool.
tendermint - ⟁ Tendermint Core (BFT Consensus) in Go
grpc-go - The Go language implementation of gRPC. HTTP/2 based RPC
go-health - Library for enabling asynchronous health checks in your service