SWIM gossip membership in plain language
Heartbeats through a central server don't scale: the coordinator becomes a SPoF and a fan-in bottleneck. SWIM (Scalable Weakly-consistent Infection-style Process group Membership) spreads failure detection with gossip — the same family NotiQ uses for worker membership.
Ping → ack → suspect
Each node periodically picks a random peer and sends a ping. No ack within timeout? Indirect probe: ask other nodes to ping the target. Still silent? Mark suspect, then propagate via infection-style gossip.
The false-positive knob
Aggressive timeouts catch failures fast but flag healthy nodes on slow networks. Conservative timeouts delay failover. There is no free lunch — only a tunable trade-off.
SWIM gives you eventually consistent membership — not a linearizable registry. Your routing layer (consistent hash ring, load balancer) must tolerate brief disagreement.
Ops checklist
For where membership meets data placement, read consistent hashing. For consensus after you know who's alive, Raft election.