SYSTEM Cited by 1 source
Ringpop¶
Ringpop (github.com/uber/ringpop-node) is Uber's gossip-protocol-based Node.js library for application-layer sharding + cluster membership. Built in 2014 during the dispatch-service rewrite to let stateful Node.js dispatch nodes share geospatial + supply positioning information for efficient rider-driver matching as Uber scaled per-city dispatch from "one simple transportation model" to many service types across many growing cities. (Source: sources/2024-03-14-highscalability-brief-history-of-scaling-uber)
Because the new dispatch services remained Node.js and were stateful (sharded by S2 geospatial cell ID), Uber needed a cluster primitive that could handle membership, failure detection, and consistent routing without introducing a central coordinator — gossip was the fit.
Seen in¶
- sources/2024-03-14-highscalability-brief-history-of-scaling-uber — introduced as the dispatch-service sharding substrate during the 2014 split of the original dispatch monolith.
Related¶
- systems/uber-dispatch — the primary consumer.
- systems/swim-protocol — the SWIM gossip-protocol family Ringpop sits within.
- concepts/gossip-protocol — the protocol family Ringpop implements.
- companies/uber — origin org.