I am designing high throughput system, where I'm gonna have several producers.
My topics will be partitioned. Producers will be sending records as key-value pairs.
Keys will be used to partition the data.
Consumers will be organized in consumer groups (they will be assigned the same group id so that they could simultaneously consume messages from the same topic, but from different partitions).
Kafka guarantees the order of messages within a single partition.
Consumers will be assigned their fair share of partitions.
The only thing that worries me, my partition key won't be distributing messages in the round-robin fashion and some partitions may be busier than others.
Q.: May uneven partitions impact performance of a Kafka cluster in any way? Are there any red flags?
I understand that some consumers will have more work to do, but that is not my main concern. Any help in this matter will be appreciated.