首页 > 解决方案 > 关于Kafka Flink消费者并行性的问题

问题描述

我试图弄清楚如何利用并行性来提高 Kafka 消费者的吞吐量。

根据我的研究,我了解当 kafka partitions (=<>) # consumer 和使用 rebalance 将消息均匀地分布在工作人员之间时的场景。

也可以使用 setParallelism(#) 来达到与在 Storm 的说话中添加更多螺栓类似的效果。在storm中,有一个offsetManager来处理由于并行性而导致的多个未完成的偏移量。

当使用 setParallelism 并确保“按顺序”提交偏移量时,Flink 是否还具有管理多个偏移量的机制?

从我自己的实验来看,似乎它与是否启用检查点以及是否启用检查点的间隔有关。

使用 setParallelism 时,如果一个线程卡住了,Flink 如何决定未提交的偏移量是多少?

看起来 Flink 能够在并行执行期间正确管理偏移量。我想了解 Flink 在幕后是如何做到的。

标签: apache-kafkaapache-flink

解决方案


推荐阅读