Distributed Communication Patterns

How services actually talk to each other — and the patterns that exist because the network can fail halfway through

Distributed Communication Crash Course

Fifteen animated sections: the third outcome and partial failure, synchronous vs asynchronous, REST/gRPC/GraphQL, service discovery and load balancing, timeouts and deadline propagation, retries with jitter, idempotency keys, circuit breakers and bulkheads, queues and topics, delivery guarantees and ordering, dead letter queues and backpressure, the dual write and the outbox, sagas, polling, server-sent events and WebSockets, and webhooks and async request-reply.

Start learning →

Distributed Communication Detailed Course

47 sections covering the coupling spectrum, TCP and HTTP/1.1 through HTTP/3, protobuf and Avro encodings, schema evolution, REST and gRPC and GraphQL, API versioning, discovery, load balancing and outlier detection, API gateways and service meshes, deadline propagation, retry budgets, deduplication, breakers, bulkheads and shedding, health checks, queues, pub/sub, Kafka partitions and rebalances, delivery semantics, DLQs, backpressure, the transactional outbox, CDC, event-driven architecture, CQRS, sagas, two-phase commit, scatter-gather and tail latency, caching, polling and long polling, server-sent events, WebSockets, webhooks, async request-reply, consensus and quorums, clocks and causality, distributed tracing, and contract and chaos testing.

Start learning →