首页 > 解决方案 > Apache Flink 如何处理注册的定时器状态?它是否存储/恢复它们?对于“事件时间”和“处理时间”特性?

问题描述

Apache Flink 有一个时间服务,让开发人员注册基于时间的事件,并在这些事件上得到通知(基于处理时间或事件时间)!但我不明白当 Apache Flink 采取检查点并从这些快照中恢复它的状态时它是如何工作的!

标签: apache-flink

解决方案


Flink 的所有定时器都保存为托管的 Flink 状态,并在故障恢复过程中恢复。所有应该在中断期间触发的处理时间计时器将在恢复后立即触发,并且事件时间计时器将在水印到达时自然触发。

唯一没有完美处理的是运营商没有检查他们当前的水印。如果源相当活跃,这通常不会引起注意,但如果你有一个几乎空闲的源,那么这可能会导致事件时间计时器的延迟触发。


推荐阅读