Flink 为什么Kafka的滞后突然降为零,即使它正在消耗记录?

2q5ifsrm  于 2023-03-11  发布在  Apache
关注(0)|答案(1)|浏览(138)

我正在使用Flink将记录从源文件转发到目的文件。源文件和接收文件是Kafka,所以数据流如下。

Kafka -> Flink -> Kafka

当我在 Jmeter 板中监控consumer lag时,模式看起来像是稳步上升,然后在特定时间突然垂直下降到几乎为零,如下图所示。
我知道Kafka滞后的概念,但我不明白为什么在半个多小时的时间里,即使Flink毫不拖延地消耗了记录,滞后仍然在增加。
Flink的检查点设置为500ms,所以我认为Kafka延迟应该每隔500ms或类似的间隔减少一次,但在我的例子中,延迟几乎在一个小时内减少。
我理解延迟的含义,但我不确定为什么延迟会下降很长一段时间,即使消息被消费没有延迟。

任何帮助都将不胜感激。
谢谢。

68bkxrlz

68bkxrlz1#

Flink在检查点完成时提交偏移,如www.example.com上所述https://nightlies.apache.org/flink/flink-docs-stable/docs/connectors/datastream/kafka/#consumer-offset-committing
最好能验证检查点是否确实完成了。查看图表,看起来这似乎每30/45分钟发生一次。

相关问题