gemini-2.5-flash| input-price: 0.3 output-price: 2.5 max-context-length: 128_000 (cost: $0.01) Β· Anfrage: 2025-09-13T06:53:37.918080

Generated by rs-summarizer Version unbekannt

Abstract:

This presentation by Rahul from LinkedIn discusses advanced techniques for tuning gRPC services to achieve high performance, low latency, high throughput, and stability at scale in production environments. The talk focuses on three key areas: deadlines, batching, and keep-alives.

For deadlines, the speaker explains their cascading nature in distributed systems, where time budgets are consumed at each service hop, potentially leaving downstream services with insufficient time. He highlights issues like miscoordination with retries, precision loss with the relative grpc-timeout header, and amplification caused by aggressive retries or hedging. Solutions include using absolute deadlines, clamping relative timeouts, and setting meaningful per-attempt budgets with caps on retries.

Regarding batching, the benefits for both CPU-bound workloads (e.g., ML inference) and network efficiency are detailed. Batching multiple requests into a single RPC reduces overhead from serialization, object allocation, and network chatter, leading to improved throughput and lower tail latencies. Strategies for implementing batching, such as size-based or time-based flushing, are also discussed.

Finally, keep-alives are presented as crucial for maintaining stable connections, preventing idle connection drops by NAT devices and load balancers, and acting as an early warning system for network path issues. The talk covers best practices for tuning keep-alive intervals to align with network infrastructure timeouts, introducing jitter to avoid "thundering herd" scenarios, and implementing server-side guardrails against abusive or misconfigured client behavior, including auto-tuning for dynamic network conditions.


Optimizing gRPC for High Performance: Deadlines, Batching, and Keep-Alives

Summary Rating: No ratings yet
Article Rating: No ratings yet

Source