gRPC
Protobuf, streaming, interceptors, TLS
- 00 gRPC Building — Roadmap Ten chapters that go from 'protobuf is a config language' to a polyglot, mTLS-secured, observable gRPC service running behind nginx, with streaming RPCs and tight deadlines. beginner 5 min →
- 01 What gRPC is and when to use it gRPC is HTTP/2, plus protobuf, plus codegen. That trio gives you a typed, fast, polyglot RPC system. Knowing what each layer is doing is half the skill of using it well. beginner 10 min →
- 02 Protocol Buffers Protobuf is the schema language and the wire format. Get the schema rules right and your services stay compatible for a decade. Get them wrong and one bad commit breaks every client at once. beginner 13 min →
- 03 HTTP/2 underneath gRPC is HTTP/2 with a particular set of headers and a particular way of framing protobuf bytes. Knowing what HTTP/2 actually does explains every gRPC failure mode you will hit in production. beginner 12 min →
- 04 Your first server and client End-to-end Go gRPC in one chapter — proto, codegen, server, client, reflection, grpcurl. By the end you have a real binary you could deploy. beginner 12 min →
- 05 Polyglot — Node and Python clients The same `.proto`, three languages. The whole pitch of gRPC is that the wire is shared and the codegen is free. Once you have done it once it stops feeling like magic. intermediate 11 min →
- 06 Streaming RPCs Streams are the part of gRPC where it stops resembling REST. Server-streaming, client-streaming, and bidirectional — three shapes that change what kind of services you can build. intermediate 13 min →
- 07 Errors, deadlines, metadata Status codes are a fixed set, deadlines flow with context, metadata rides every call. The three together turn a working gRPC service into one that's debuggable and survivable. intermediate 12 min →
- 08 Interceptors Interceptors are gRPC's middleware. Cross-cutting concerns — auth, logging, tracing, retries, panic recovery — live here, once, for every RPC. Get the layering right and your handlers stay tiny. intermediate 13 min →
- 09 TLS and mTLS Server TLS encrypts the wire and proves the server's identity. Mutual TLS adds the same proof for clients. Both ride on the same handshake — and once you have a small CA, both are a few lines of Go. advanced 12 min →
- 10 Production self-host Load balancing that respects HTTP/2, observability you actually use, health checks the framework supports, and the full systemd + nginx deploy on a VPS. advanced 15 min →