gRPC

🔌 gRPC & RPC

Remote calls that feel local — Protobuf payloads over HTTP/2, four streaming shapes, deadlines, status codes, and interceptors

🧠 Start Here
The Foundations 🧠
gRPC 101

What gRPC actually is: Protobuf for the bytes, HTTP/2 for the transport, and generated stubs that turn a network call into a method call. Read this first.

Channels Stubs HTTP/2 streams
Open Guide →
🎯 The Core Model
Shapes🔁
The Four RPC Types

Unary, server-streaming, client-streaming, and bidirectional — the .proto, the semantics, and the code for each.

streambidi
Open Guide →
Time⏱️
Deadlines & Cancellation

Why an absolute deadline that propagates across hops beats a pile of per-hop timeouts and retries.

deadlinecancel
Open Guide →
Errors🚦
Status Codes & Errors

The 17-code status model, rich error details, and how it maps back onto HTTP status codes.

UNAVAILABLEdetails
Open Guide →
Middleware🧅
Interceptors & Metadata

Headers-as-metadata and interceptors for auth, logging, and retries — the cross-cutting layer.

metadatainterceptor
Open Guide →
⚖️ Choosing
The Big Question⚖️
gRPC vs REST

Payload, transport, streaming, browser reach, tooling, debuggability — and the cases where plain REST/JSON still wins.

RESTgRPC-Web
Open Guide →