了解到 kafka 有消费者群组机制,如果线程数大于分区数则多出的线程将空闲,那么生产者与分区数有关系吗?比如我的生产者分布在几十台机器上但是这个主题只设置了 5 个分区,会怎么样呢
1
lzdhlsc 2018-08-14 07:01:00 +08:00
没关系. producer 在 send 的时候有三个选项:
1. 不指定 partitioner, 则使用默认 partitioner, 根据 message key 的 hash 分配到某一 partition 上, 无 message key 则 round robin. 2. 指定 partitioner, 则 partitioner 会决定分配到哪个 partition 上. 3. 也为 message 可以指定一个具体的 partition. |