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.