The Story of Why We Migrate to gRPC and How We Go About It
summary
Spotify replaces a 2012 homegrown messaging stack called Hermes homegrown protocol because it lacks ecosystem, tooling (they wrote hurl), and slows hiring. Migration targets over 1,000 services (2,500 services interact) and already reaches ~10% adoption. Concrete moves: enforce shared proto repo with CI linting, use proto-tool/protoman, generate clients, and prefer package-based versioning. Runtime wins include deadline propagation, hedging and retry throttling, and client-side load balancing with future xDS control-plane integration. Strategies mix a Golden Path, incentives and occasional hard cutoffs.
AI-written summary · about
chapters (13)
- 0:00Intro
- 2:01Spotify's Infrastructure
- 2:48Hermes
- 7:37The Proto
- 8:06Code Generation
- 9:05Schema Management
- 13:09Retry Hedging
- 15:46Deadlines
- 18:56Lookaside Load Balancing
- 22:04Our Journey
- 25:51Spotify's Golden Path
- 27:042. Don't force it!
- 27:583. Force it!
related talks
35mThe Story of why we migrate to gRPC and how we go about it
36mAdopting gRPC at Spotify
21mReal World Migration from HTTP to gRPC in Ruby
24mgRPC Proxyless Service Mesh
33m"RPC frameworks overview"
46mIntroduction to gRPC
34mRuby and gRPC
35mEvolving Critical Systems With gRPC: Bidirectional at Scale — What Works, What Hurts, What’s Next?
