如何处理 Flink 作业频繁重启问题?

分析&回答

Flink 实现了多种重启策略

  1. 固定延迟重启策略(Fixed Delay Restart Strategy)
  2. 故障率重启策略(Failure Rate Restart Strategy)
  3. 没有重启策略(No Restart Strategy)
  4. Fallback重启策略(Fallback Restart Strategy)

反思&扩展

  • Flink支持不同的重启策略,以在故障发生时控制作业如何重启
  • 默认的重启策略:如果没有启用 checkpointing,则使用无重启 (no restart) 策略。如果启用了 checkpointing,但没有配置重启策略,则使用固定间隔 (fixed-delay) 策略
  • 如果在工作提交时指定了一个重启策略,该策略会覆盖集群的默认策略默认的重启策略可以通过 Flink 的配置文件 flink-conf.yaml 指定。配置参数 restart-strategy 定义了哪个策略被使用。
  • 常用的重启:
    1. 策略固定间隔 (Fixed delay)
    2. 失败率 (Failure rate)
    3. 无重启 (No restart)
  • 重启策略可以在flink-conf.yaml中配置,表示全局的配置。也可以在应用代码中动态指定,会覆盖全局配置

喵呜面试助手:一站式解决面试问题,你可以搜索微信小程序 [喵呜面试助手] 或关注 [喵呜刷题] -> 面试助手 免费刷题。如有好的面试知识或技巧期待您的共享!