0


Flink stop 和 cancel停止 job 的区别

Flink 停止 job 的方式(stop 和 cancel)

1.Stop 方式

后边跟的任务id 是flink的任务ID,不是yarn的

flink stop -m 127.0.0.1:8081 357591171dfcca2eea09de

注:stop方式停止任务对 source 有要求,source必须实现了StopableFunction接口,才可以优雅的停止job

2. cancel 方式

取消任务。如果在 conf/flink-conf.yaml 里面配置了 state.savepoints.dir ,会保存savepoint,
否则不会保存 savepoint。

使用 命令方式

flink cancel -m 127.0.0.1:8081 357591171dfcca2eea09de

也可以在停止的时候显示指定 savepoint 目录

flink cancel -m 127.0.0.1:8081 -s /tmp/savepoint 357591171dfcca2eea09de

也可以通过 UI 界面 cancel

两者的区别

● cancel() 调用,立即调用作业算子的 cancel() 方法,以尽快取消它们。如果算子在接
到 cancel() 调用后没有停止,Flink 将开始定期中断算子线程的执行,直到所有算子停
止为止。
● stop() 调用,是更优雅的停止正在运行流作业的方式。stop() 仅适用于 source 实现了
StoppableFunction 接口的作业。当用户请求停止作业时,作业的所有 source 都将接
收 stop() 方法调用。直到所有 source 正常关闭时,作业才会正常结束。这种方式,使
作业正常处理完所有作业。

标签: flink stop cancel

本文转载自: https://blog.csdn.net/young_0609/article/details/131437334
版权归原作者 GOD_WAR 所有, 如有侵权,请联系我们删除。

“Flink stop 和 cancel停止 job 的区别”的评论:

还没有评论