Problems of Long-Lived gRPC Streams
summary
The talk examines long-lived gRPC streams, focusing on server-side streaming in Java. It outlines practical problems that appear behind gRPC’s streaming API (connection lifecycle, resource management, error handling, timeouts, and backpressure) and discusses approaches and techniques to mitigate those issues in real-world services.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 1:34Why gRPC
- 3:21Talk overview and goals
- 5:07Streaming service example
- 8:41Memory overflow problem
- 10:06gRPC internal queue
- 13:55Client types and features
- 17:51Xtreme strategy for trading client
- 21:41Full House strategy for analytics client
- 25:16File queue strategy
- 33:14Server logic implementation
- 36:26Handling client disconnections
- 39:23Resource monitoring and control
- 40:27gRPC client side
- 44:50Client reconnection issues
- 48:24Browser support problems
- 51:55Proxy server issues
- 54:25Custom proxy solution
- 57:15Q&A
related talks
55mgRPC 101 for Java Developers
14mOverview of gRPC
24mgRPC Communication Patterns – A Deep Dive
46mIntroduction to gRPC
20mKeynote: Overview of gRPC
35mEvolving Critical Systems With gRPC: Bidirectional at Scale — What Works, What Hurts, What’s Next?
40mgRPC, let's communicate differently
16mKeynote: Overview of gRPC
