Interactions within a Group

The join call establishes communication between a member and the group service. After the join call returns successfully, the group library continues exchanging heartbeats with the group service. (Heartbeats and other group protocols are not visible to your program code.)

The leave call explicitly ends the stream of heartbeats from a member. The group service immediately adjusts the ordinals of the remaining members.

Other events can implicitly interrupt the heartbeat stream. For example, the member process could abruptly exit, or network segmentation could separate the member from the group service. In these situations, the group service also adjusts the ordinals of the remaining members, but after a calculated delay (see Activation Interval).

When a member’s ordinal changes, the group facility informs program code by raising an ORDINAL_UPDATE advisory message. Programs subscribe to this advisory, and application callback code must take appropriate action to change the member’s operating behavior.

The group service tracks member heartbeats to determine the health of each member.

Individual members of a group do not exchange group protocol messages with one another, but only with the group service.