title: Data synchronization between redundant nodes vb.net
body: <p>I have a simple class; </p>
  
  <pre><code>public class Person
      public property Name as string
      public property CurrentLocation as integer
      public property LastSeen as Datetime
  end class
  </code></pre>
  
  <p>And these persons are in a list</p>
  
  <pre><code>Public AllPersons are list(of Person)
  </code></pre>
  
  <p>My software runs on 1 to 20 nodes in the network. This data needs to be synced throughout the 20 nodes, without depending on one node to sync. These nodes need to be redundant, meaning the sync process should continue even if 18 random nodes are not available any more. Every node already has a complete list of every other node. The node can reach other nodes on the same lan using a TCP connection. Preferred method of communication is using the Nancy framework. It's a simple list of 100 to maybe 50000 users, containing maybe, up to 10 properties each. All very small, like datetime format, integer or string.</p>
  
  <p>So distributed/decentralized is key here, also high frequency syncing with little data is required. There can be up to 25-50 changes within a minute, only containing maximum of 100 bytes of data.</p>
  
  <p>The purpose is redundancy, the service is behind a loadbalancer and every node should have the same data set, without creating a single point of failure. Creating a back-end database is not and option, because this will introduce a new requirement and a single point of failure. As the tag's indicate, I'm looking for a Windows/.NET solution. </p>
  
  <p>Is there a existing solution I can use?, if not, is there documentation on how to approach this?</p>