I’m trying to write up a tool that requires knowledge of the state of other machines in a cluster (local LAN). This is for a network failover/high availability system similar to VRRP and corosync/openais, but I wish to contain more information (such as near real-time speed/performance characteristics) so devices can make more intelligent choices. This means using a protocol more complicated than a predetermine weight-based mechanism: by allowing all clustered machines to see the state of each other, they can communally agree on which is the most suitable to be the master device.
From my searches, I haven’t found any (C, C++ or JavaME) libraries that offer a distributed state mechanism. Ideally, I’m looking for something that broadcasts/multicasts each individual machines state periodically so participating machines can build up a global state table and all can see who the master should be. State in this case is arbitrary key/value pairs.
I’d rather not re-invent any wheels so am curious to know if anyone here can point me in the right direction?
I’m not sure if there is any application for your purpose or not.
But I know that you can write a simple program with MPI library and broadcast any information that you want.
all client’s can send their state to root node, and the root node then broadcast the message.
functions that you need for this are:
there is lots of tutorial on C++/MPI on net, just google it!