Are there any frameworks or technologies to synchronize State/data updated on one peer with all other peers in a reliable network?
I'm looking for key-val data and State information that will be maintained between multiple nodes.
Goal: Every node and the main system should be in the same State. When there is a State change on any node, say from State 1 to 2, this state change should be applied to all other nodes and the main system.
Provided: The nodes and the main system are securely connected and the protocol used is tcp/ip.
Requirement: The data which needs to be synchronized is a key-value pair data. The state information which also needs to be synchronized is something like, state1 or state2. Full copy of dataset on every node should be maintained with an automated failure tolerance, i.e., when a node becomes active after a failure, has to have the full copy of the dataset and the current state.
It should be lightweight in terms of required memory, plug-ins or libraries.
Technologies I have considered are: Private block-chain (Multi-chain), Apache Kafka, other messaging protocols.
Any suggestions or any leads requested.