Patent ID: 8589574

Claim:
A distributed system, comprising: a plurality of computing devices configured to implement: a plurality of application instances each configured to perform one or more application functions within said distributed system; and a plurality of discovery and failure detection daemon (DFDD) instances, each configured to store an indication of a respective operational state of each member of a respective group of said plurality of application instances, wherein the DFDD instances are peers of one another; wherein each of said DFDD instances is configured to repeatedly execute a peer-to-peer, gossip-based synchronization protocol with another peer one of said DFDD instances, wherein said another peer one of said DFDD instances is selected randomly or pseudorandomly upon each execution of said protocol, wherein to execute said protocol, a first and a second one of said DFDD instances are configured to reconcile differences among membership of said respective groups of application instances; wherein a new application instance to be added to said plurality of application instances is configured to notify a particular one of said DFDD instances of said new application instance's availability upon becoming available to perform at least one of said one or more application functions; and wherein said particular DFDD instance is configured to propagate an indication of said new application instance's availability to other ones of said DFDD instances via execution of said gossip-based synchronization protocol, wherein propagation of said indication occurs without intervention on the part of said new application instance.