我有一位卡夫卡消费者已经完美地运行了几天。昨天经纪人倒下了。从那以后,消费者显示出100%的CPU使用率。当经纪人上涨时,使用率大幅下降(低于10%)。 我很好奇为什么当经纪人关闭时,使用率是100%(或接近100%)?我在日志中看不到任何内容。
答案 0 :(得分:1)
kafka使用者和代理的CPU使用率增加通常是由于来自使用者的轮询请求的频率很高。这主要是因为用户配置效率低。
检查两个属性:
如果主题中的数据不是经常产生的,则将 fetch.max.wait.ms 的值保持较高,并将 fetch.min.bytes 的值保持为非零。避免对经纪人的频繁轮询请求
答案 1 :(得分:0)
我已经通过从以下版本升级kafka解决了该问题:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.11</artifactId>
<version>0.11.0.1</version>
</dependency>
到
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.12</artifactId>
<version>2.0.1</version>
</dependency>