2020 年 8 月
-
[原创]解决Spring Boot Kafka 分区不均匀问题
现象 我们通常使用多个分区,开多线程来提高Kafka的消费速度,分区不均匀会导致线程闲置,消费速度过慢,进而导致消息 积压 。 问题原因 消息写入哪个分区是由 生产者 决定的,在调用 kafkaTemplate.send() 方法时,可以指定分区,否则使用默认分区器 DefaultPartitioner 计算。因为分区可能会调整,通常我们不会指定固定分区,而是依靠分区计算器。 查看 DefaultPartitioner 代码可以得知:当…