Topic
A named stream in Kafka, split into partitions for horizontal scale. Producers publish to a topic; consumer groups read from it independently, each at their own pace.
Partition
One ordered, append-only slice of a Kafka topic, replicated across brokers for durability. Order is only guaranteed within a single partition, never across a whole topic.
Partition key
The value (often a user id or order id) Kafka hashes to pick which partition a message lands on. Same key, same partition, every time — which is what makes 'ordered per key' free instead of something you build.
Log
Kafka's core structure — an append-only sequence of messages, written once and never edited. Consumers read it by position rather than by removing entries, which is exactly why the same message can be read by many independent readers.
Offset
The position of the next message a Kafka consumer group will read in a partition — its bookmark in the log. Replay is just resetting this number backward; it's tracked per group, independently of every other group reading the same topic.
Consumer group
A set of Kafka consumers that split a topic's partitions between them — each partition goes to exactly one consumer in the group at a time. Two different groups reading the same topic never affect each other's offset.
Retention
How long Kafka keeps a message in the log — a time window, a size cap, or forever for a compacted topic — regardless of whether anyone's read it yet.
Eviction
A Kafka log entry aging out once it exceeds the topic's retention window — deleted whether or not any consumer group ever read it. A group sitting on an offset that falls outside the window gets snapped forward to the oldest entry still available.
Replay
Reprocessing messages a consumer already read once, by resetting a Kafka consumer group's offset backward. There's no equivalent in a default RabbitMQ queue — once a message is acked, it's gone for good.
Poll rate
How often, per second, a Kafka consumer group pulls the next message off its partition. Unlike RabbitMQ, nothing is pushed to it — a slow poll rate just means the group falls further behind the live edge, not that messages back up waiting for it.