【发布时间】:2021-12-28 08:18:49
【问题描述】:
我正在开发具有无限源的 Flink 管道。如何从管道代码内部优雅地关闭管道,以便检查点等工作,而不调用外部服务? System.exit() 似乎太粗糙了,并且在启用重新启动的情况下抛出异常将不起作用。 (我正在取消源,但这不会关闭管道,因为源未绑定。)
【问题讨论】:
标签: apache-flink flink-streaming
我正在开发具有无限源的 Flink 管道。如何从管道代码内部优雅地关闭管道,以便检查点等工作,而不调用外部服务? System.exit() 似乎太粗糙了,并且在启用重新启动的情况下抛出异常将不起作用。 (我正在取消源,但这不会关闭管道,因为源未绑定。)
【问题讨论】:
标签: apache-flink flink-streaming
尝试使用savepoint:https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/cli/#terminating-a-job。
您可以使用保存点停止流式传输作业。稍后,如果您想恢复流式传输作业,请从保存点重新启动它。
【讨论】:
try { env.execute(); } catch ...。我会试试的。谢谢!