Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

GMSHealthMonitor makes sure that each member in the distributed is alive and communicating to this member. To make sure that we create the ring of members based on current view. On this ring, each member make sure that the next - member in ring (its neighbor) is communicating with it. For that we record last message timestamp from next-memberits neighbor. And if it sees this member its neighbor has not communicated in last period(member-timeout) then we check whether this member its neighbor is still alive or not. Based on that we informed probable coordinators to remove that member its neighbor from the view.

HeartbeatMessage

Each Member periodically sends HeartbeatMesage (UDP) to all the other members in the distributed system, including the coordinator. Upon receiving the HearbeatMessage, the receiving member updates its record associated with the sender of the timestamp when the message is received. The receiver does not reply to such HeartbeatMessages.

PlantUML
title This diagram shows a member (M) sending HeartbeatMessage to all the other members in the distributed system (N, C)
hide footbox
entity M
entity N
entity C
M -> N: HeartbeatMessage(-1)
note right : update the record of timestamp
M --> C : HeartbeatMessage(-1)
note right : update the record of timestamp

...