- Core project structure
- Data storage layer
- Implement BoltDB
- Optimise to Messagepack, proto or avro
- Bash/Make script
- Cluster deployment
- Build and run tests
- Add and remove nodes
- Client CRUD
- Rest interface
- Node leader election
- Implement Raft
- Implement FSM
- Add/Remove nodes
-
vnode
leader election- Failure and restart
-
vnode
leader and follower health check
- Node connection manager
- GRPC contracts and message passing
- Data replication
- Properties file
- Validation
- Using master properties file
- Partioner Hash function
- Hashring algorithm
- Adding and removing nodes
- Provision for clustering key
- Re-routing via connection manager
- Restart, scale up and scale down handling
- Invoking node and
vnode
leader election
- Invoking node and
- Job executor
- Hybrid logical clock
- Rest caller
- Consensus during publish
TBD