2017-05-24 10 views
2

Nifiでフローを開始するGetHttpプロセッサとInvokeHttp Nifiプロセッサがありますが、それらをURLから一度だけ取得してデータを次のプロセスに渡す必要があります。プロセッサ構成では、オフスケジューリング、どのようにこれを達成する。Nifiプロセッサスケジュールを無効にする方法

答えて

0

InvokeHttpは、初期ではない可能性があり、他のプロセッサからの着信フローファイルによってトリガされる可能性があります。

したがって、InvokeHTTPプロセッサの前後に種類の同期ロジックを置くことができます。

たとえば、Wait/Notifyプロセッサを使用できます。

4

Apache NiFiプロセッサとフローは、単一の「ジョブ実行」や「バッチ処理」ではなく、一定のデータストリーム用に設計されています。私たちが頻繁に使用する比喩は、水を流すためのパイプを建設し、フィッティングするのではなく、すでに流れる河川に沿って灌漑用の溝を掘るのに役立つということです。データは常に存在しており、移動しています。

これは本当にあなたがトリガするために必要な1回限りのアクションである場合は、30 secのようなものに実行スケジュールを設定し、手動でスタート、その後できストップこれらのプロセッサ。それらは一度だけ実行され、30秒以内にそれらを停止する限り、再び実行されません。

手動で行うことができない場合は、実行スケジュール52 weeksのように設定することができます。 スケジューリング方法CRON drivenに変更し、実行スケジュールを非常に長いスケジュールのcrontabパラメータに設定することもできます。

@daggettが指摘したようにGetHTTPソースプロセッサであるとして、あなたはまた、InvokeHTTPのためにそれ以外の場合は実行されないだろう流れが、これだけ作品をトリガするWait/Notifyプロセッサを使用することができます。

関連する問題