A peer-to-peer communication protocol where nodes periodically share information with random peers to spread updates across the network.
In large, distributed systems, keeping all nodes in sync can be slow or fragile. Gossip protocols offer a scalable, fault-tolerant way to propagate state, configuration, or membership changes without centralized coordination.
Use gossip protocols to keep distributed nodes aware of each other’s status (e.g., who’s alive, who failed) or to eventually spread updates like config changes or service discovery info.
You need to know
Eventually consistent: Gossip doesn't guarantee immediate consistency, but all nodes will converge to the same state over time.
Highly scalable and fault-tolerant: Works well even in large networks with node failures or intermittent connectivity.
Used for membership and health info: Frequently used to track node status (up/down) and manage cluster membership.
Popular technologies
Serf (by HashiCorp) - Lightweight gossip-based tool for cluster membership and failure detection.
Cassandra - Uses gossip for node discovery and state propagation in the database cluster.
Consul - Employs gossip to keep service and health info synchronized across agents.
Like posts like this?
Every week, you'll get a new system design concept, broken down like this one.
Free subscribers also get a little bonus:
🎁 The System Design Interview Preparation Cheat Sheet
If you're into visuals, paid subscribers unlock:
→ My Excalidraw system design template – so you have somewhere to start
→ My Excalidraw component library – used in the diagram of this issue
No pressure though. Your support helps me keep writing, and I appreciate it more than you know ❤️