1.首先,我们需要判断到底是kafka消费能力不足的问题还是下游数据处理不及时的问题。
2.如果是kafka消费能力不足的问题,则可以考虑增加Topic的分区数,并且同时提升消费组的消费者数量,消费者数=分区数。(两者缺一不可)
分区数大于消费者消费数量时,一个消费者消费几个分区,消费速度会变慢。但分数区小于消费者组消费数量时,会造成部分消费者没有消费,浪费资源。所以最优解就是消费者数量等于分区数。
3.如果是下游的数据处理不及时:提高每批次拉取的数量。每批次拉取的数据过少(拉取的数据/处理时间<生产速度),使处理的数据小于生产的数据,也会造成数据积压。