Patent ID: 8676959

Claim:
A computing system for high-availability operation, the computing system comprising: a plurality of host computers connected together in a network, each host computer executing one or more tasks of a distributed application; and a high-availability (HA) process running on each of the plurality of host computers, each HA process including: a heartbeat monitor configured to perform: intra-host heartbeat monitoring to detect inactivity of one or more intra-host processes, and inter-host heartbeat monitoring to monitor activity of the network and dynamically-updated, session-specific landscape information that relates to a state of the distributed application to detect a failed inter-host process or host computer, and a failover handler to transfer at least one of the one or more tasks from the failed inter-host process or host computer to an active inter-host process or host computer, each HA process further including a host name resolver to identify a host name of one or more of the plurality of host computers in the network, wherein one of the HA processes is designated as a master HA process; the host computer running the master HA process is included, along with one or more other host computers running HA processes designated as potential master HA processes, in a list of host computers configured to run the master HA process; the inter-host heartbeat monitoring comprises the heartbeat monitor of the master HA process performing a first pinging of the HA processes on host computers other than the host computer hosting the master HA process, the first pinging being performed to detect the failed inter-host process or host computer; and the inter-host heartbeat monitoring further comprises the heartbeat monitor of each potential master HA process performing a second pinging of all other potential master HA processes in the list and the master HA process, the second pinging being performed to detect a failure of the master HA process and determine which potential master HA process replaces the master HA process if the master HA process has failed.