当任务失败时,Flink需要重新启动失败的任务和其他受影响的任务,才能将任务恢复到正常状态。
重启策略(Restart strategies)和故障转移策略(failover strategies)用于控制任务重新启动。重启策略决定是否以及何时重启失败的/受影响的任务。故障转移策略决定应该重新启动哪些任务来恢复作业。
集群可以使用默认重启策略启动,当没有定义特定于作业的重启策略时,总是使用默认重启策略。如果使用重启策略提交作业,则该策略将覆盖集群的默认设置。
默认的重启策略是通过Flink的配置文件link-conf.yaml设置的,配置参数restart-strategy定义了采用哪种策略。如果不启用检查点,则使用"无重启"策略。如果检查点被激活,并且没有配置重启策略,则使用固定延迟策略(重启尝试次数使用Integer.MAX_VALUE)。
除了可以在flink-conf.yaml中设置默认的重启策略外,我们还可以为每个Flink作业定义特定的重启策略。这个重启策略是通过调用StreamExecutionEnvironment上的setRestartStrategy方法以编程方式设置的。
目前的重启策略有以下5种:
(可以查看org.apache.flink.api.common.restartstrategy.RestartStrategies类)
1
订阅专栏 解锁全文
317

被折叠的 条评论
为什么被折叠?



