Kafka guarantees ordering within a partition but not across partitions — a crucial concept. To get ordering for related events, you route them to the same partition (via the same key). Understanding ordering is important for correctness.
Per-partition ordering
Kafka guarantees:
✓ ORDER WITHIN a partition → events in a partition are strictly ordered (by offset);
consumers read them in order
✗ NO order ACROSS partitions → events in different partitions have no relative order
guarantee (they're processed in parallel by different consumers)
→ this is a FUNDAMENTAL Kafka property (and a common source of misunderstanding)
