Skip to content
Minimal Viable Data Sync Implementation
Go Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
node feature/subscribe (#62) Aug 6, 2019
peers
protobuf
state Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
store Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
transport
vendor Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
.gitignore
.travis.yml Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
LICENSE Initial commit Apr 18, 2019
Makefile Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
README.md Update README.md Aug 7, 2019
go.mod Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
go.sum Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
main.go Don't rely on the presence of GroupID for non-Messages types Jul 25, 2019
mvds_batch_test.go feature/subscribe (#62) Aug 6, 2019
mvds_interactive_test.go import sort Aug 11, 2019

README.md

Minimal Viable Data Sync

Version MIT License API Reference Go Report Card Build Status

Experimental implementation of the minimal viable data sync protocol specification.

Usage

Prerequisites

Ensure you have protoc (Protobuf) and Golang installed. Then run make.

Simulation

In order to run a very naive simulation, use the simulation command. The simulation is configurable using various CLI flags.

Usage of main.go:
  -communicating int
    	amount of nodes sending messages (default 2)
  -interactive int
    	amount of nodes to use INTERACTIVE mode, the rest will be BATCH (default 3)
  -interval int
    	seconds between messages (default 5)
  -nodes int
    	amount of nodes (default 3)
  -offline int
    	percentage of time a node is offline (default 90)
  -sharing int
    	amount of nodes each node shares with (default 2)

License

This project is licensed under the MIT License - see the LICENSE file for details

You can’t perform that action at this time.