Apache nifi 如何关闭Nifi处理器计划

Apache nifi 如何关闭Nifi处理器计划,apache-nifi,Apache Nifi,我有GetHttp和InvokeHttp Nifi处理器,它们在Nifi中启动流,但我希望它们只从URL获取一次数据,并使用无法关闭调度的处理器配置将数据传递到下一个进程,如何实现这一点。InvokeHttp可能不是初始值,可能由来自其他处理器的传入流文件触发 所以,您可以在InvokeHTTP处理器前后放置某种同步逻辑 例如,您可以使用Wait/Notify处理器。Apache NiFi处理器和流设计用于恒定数据流,而不是单个“作业执行”或“批处理”。我们经常使用的一个比喻是,NiFi帮助你沿

我有GetHttp和InvokeHttp Nifi处理器,它们在Nifi中启动流,但我希望它们只从URL获取一次数据,并使用无法关闭调度的处理器配置将数据传递到下一个进程,如何实现这一点。

InvokeHttp
可能不是初始值,可能由来自其他处理器的传入流文件触发

所以,您可以在
InvokeHTTP
处理器前后放置某种同步逻辑


例如,您可以使用
Wait
/
Notify
处理器。

Apache NiFi处理器和流设计用于恒定数据流,而不是单个“作业执行”或“批处理”。我们经常使用的一个比喻是,NiFi帮助你沿着已经流动的河流挖掘灌溉沟渠,而不是建造和安装管道让水流过。数据一直都在那里(并在移动)

如果这确实是需要触发的一次性操作,则可以将运行计划设置为
30秒
,然后手动启动并停止这些处理器。它们将执行一次,只要您在30秒内停止它们,就不会再次执行

如果无法手动执行此操作,则可以将运行计划设置为类似于
52周
。您还可以将调度策略更改为
CRON-driven
,并将运行调度设置为具有很长调度的crontab参数

正如@daggett所指出的,您还可以使用
Wait
/
Notify
处理器触发否则不会执行的流,但这只适用于
InvokeHTTP
,因为
GetHTTP
是源处理器