Andrea Maria Piana 9e1addbac0 Don't rely on the presence of GroupID for non-Messages types
This commits changes the behavior so that we don't rely on the presence
of GroupID in the payload.

Adds some tests to verify the basic functionalities of BATCH and
INTERACTIVE mode, but more are required to ensure the correct
functioning.

Error handling and state management is probably also to be inspected
more carefully.
2019-07-25 12:42:46 +02:00
2019-04-19 00:42:23 +02:00
2019-07-18 16:43:27 -05:00

Minimal Viable Data Sync

Version MIT License API Reference Go Report Card

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

Description
No description provided
Readme MIT 4.6 MiB
Latest
2019-11-05 11:54:20 -05:00
Languages
Go 98.4%
Makefile 1.6%