Learning · Event-driven & Kafka
Event-driven & Kafka
Event-driven systems earn their complexity when producers and consumers can change independently, absorb load spikes, and recover by replaying facts. These notes cover the decisions that keep Kafka useful in production — not just “working in a tutorial.”
Topics
- Why event-driven
When asynchronous facts beat request/response — and when events become an expensive distributed ball of mud.
- Events, commands, and messages
Facts vs instructions — how to name and shape messages so Kafka topics stay trustworthy contracts.
- Kafka topics and partitions
How topics, partitions, keys, and consumer groups actually shape ordering, scale, and failure in production.
- Producing reliably
Keys, acks, idempotent producers, and the outbox — publishing events you can trust after a crash.
- Consuming correctly
Consumer groups, commits, idempotency, and ordering — processing Kafka without double charges or lost updates.
- Schemas and compatibility
Evolving Kafka event contracts without breaking consumers — registries, compatibility modes, and ownership.
- Failure, DLQ, and replay
Retries, dead letters, and rebuilding state from the log — recovery without tribal knowledge.
- Operating Kafka in production
Lag, retention, quotas, and the signals seniors watch so the bus stays boring under load.