Note that there are some explanatory texts on larger screens.

plurals
  1. POHeartbeat Protocols/Algorithms or best practices
    primarykey
    data
    text
    <p>Recently I've added some load-balancing capabilities to a piece of software that I wrote. It is a networked application that does some data crunching based on input coming from a SQL database. Since the crunching can be pretty intensive I've added the capability to have multiple instances of this application running on different servers to split the load but as it is now the load balancing is a manual act. A user must specify which instances take which portion of the input domain.</p> <p>I would like to take that to the next level and program the instances to automatically negotiate the diving up of the input data and to recognize if one of them "disappears" (has crashed or has been powered down) so that the remaining instances can take on the failed instance's workload.</p> <p>In order to implement this I'm considering using a simple heartbeat protocol between the instances to determine who's online and who isn't and while this is not terribly complicated I'd like to know if there are any established heartbeat network protocols (based on UDP, TCP or both).</p> <p>Obviously this happens a lot in the networking world with clustering, fail-over and high-availability technologies so I guess in the end I'd like to know if maybe there are any established protocols or algorithms that I should be aware of or implement.</p> <p><strong>EDIT</strong></p> <p>It seems, based on the answers, that either there are no well established heart-beat protocols or that nobody knows about them (which would imply that they aren't so well established after all) in which case I'm just going to roll my own.</p> <p>While none of the answers offered what I was looking for specifically I'm going to vote for <a href="https://stackoverflow.com/questions/1442189/heartbeat-protocols-algorithms-or-best-practices/1442901#1442901">Matt Davis's answer</a> since it was the closest and he pointed out a good idea to use multicast.</p> <p>Thank you all for your time~</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload