Apache flink 如何从代码重新启动Flink作业

Apache flink 如何从代码重新启动Flink作业,apache-flink,Apache Flink,这似乎是一个相当简单的问题,但经过几天的研究,我仍然无法找到一种方法来优雅地取消Flink作业并从代码中重新启动它 作为参考,有一个类似的帖子:,但它没有告诉如何获取JobManager,它有cancel()方法可能会有所帮助 有人可以解释一下吗?我认为,通过代码取消flink作业的最简单方法是使用RESTAPI。 见: 然后,您可以在flink代码的主类中定义重启策略。像 final int restartAttempts = configuration.getInteger(RESTART_

这似乎是一个相当简单的问题,但经过几天的研究,我仍然无法找到一种方法来优雅地取消Flink作业并从代码中重新启动它

作为参考,有一个类似的帖子:,但它没有告诉如何获取JobManager,它有cancel()方法可能会有所帮助


有人可以解释一下吗?

我认为,通过代码取消flink作业的最简单方法是使用RESTAPI。 见:

然后,您可以在flink代码的主类中定义重启策略。像

final int restartAttempts = configuration.getInteger(RESTART_ATTEMPTS, 3);
final int delayBtwAttempts = configuration.getInteger(RESTART_DELAY_IN_MILLIS, 3000);
final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.setRestartStrategy(fixedDelayRestart(restartAttempts, delayBtwAttempts));
见: