gRPC vs REST: let the battle begin!
summary
Compares REST vs gRPC with concrete tradeoffs: gRPC uses ProtoBuf + HTTP/2, forces nonblocking streaming and shows deadline propagation that cancels downstream calls, while REST fits caching and serverless patterns. Demo deploys multiple microservices to cloud, uses Zipkin tracing and circuit breakers, and shows gRPC Java hitting around 600,000 QPS on 8-core machines (higher on 32 cores). Code and demo services live on GitHub and the demo mixes REST frontends with gRPC backend calls.
AI-written summary · about
chapters (23)
- 0:00Start
- 7:10Remote Calls
- 7:36Multiple Instances
- 9:38Heterogeneous Data Format
- 10:45REST: Data Source
- 12:04REST: Controller
- 12:49REST: Service Discovery
- 17:34Blocking API (aka Thread-per-Request)?
- 18:39Non-Blocking API (aka Hollywood Principle)
- 20:43content.proto
- 25:31Service Discovery & Load Balancing
- 27:55Client Latency
- 28:36Classic Cloud
- 29:11Serverless
- 31:33Sample Problem: Voting & Leaderboard
- 32:14Cascading Failure
- 32:28Circuit Breaker
- 33:20Timeouts?
- 33:34Large Timeouts
- 34:04Short Timeouts
- 35:55Investigation
- 36:09Zipkin: Traces and Latency
- 45:08Questions?
related talks
45mgRPC vs REST: let the battle begin!
46mREST API vs gRPC, which one should you use in breaking a monolith
46mIntroduction to gRPC
01h 15mREST, GraphQL, and gRPC: A Comparison
54mgRPC 101 for Spring Developers
42mREST API vs gRPC, Which One Should You Use in Breaking a Monolith
49mBuilding fast microservices with binary protocol - introduction to gRPC
43mTUTORIAL: We've "REST"ed long enough -- let's have an API adventure!
