2017-09-19 9 views
0

通常のジョブフレームワークとしてバネバッチを使用できますか?バネバッチを非バッチジョブ(通常ジョブ)のジョブフレームワークとして使用できます

私はデバイス上でイベントを取得し、ジョブをトリガーするために、 という責任を負うデバイスサービス(マイクロサービス)を作成したいと考えています。デバイスはリモートであるため、ジョブが完了するまでに時間がかかりますが、バッチジョブではありません(定期的に実行していないか、大きなデータセットを分割していない)。

バネバッチをジョブフレームワークとして使用できるのか、それともバッチ処理専用なのか疑問です。答えが「いいえ」の場合は、あなた自身の仕事以外にどのような仕事の枠組みが有名ですか?

仕事内容:

  1. 私は、特定のデバイスに対していくつかのステップが含まれますジョブを実行する必要があります。各ステップはデバイスと通信し、デバイスがそれに与えられた前のコマンドを実行したことを確認するのを待つ。
  2. 私はリトライ、リカバリ、スケジューリング機能が必要です(スプリングバッチと石英を組み合わせたもの)
  3. 私は基本的にデバイスに関するコマンド要求を受けていますが、仕事/仕事が成功するためにはすべて長い時間待つ必要があります。

また、関連するIMDG/DBを選択(正当化)できます。並行処理はスコープの外にあります(ジョブ機構外にあります)。心に浮かんだ選択肢は、アクターの俳優でした。

答えて

0

私が知る限り、は、周期的に実行されていないか、大きなデータを分割していません。は、Springバッチの使用の主な要件ではありません。プロセス - -

スプリングバッチは、基本的&読み取られる読取処理するアイテムによってアイテムを発生し、書き込み(チャンク配向処理用)のチャンクで行わ枠組みを書き込みます。

あなたの仕事のロジックが - の読み込みプロセス - 書き込みのパラダイムと残りのものに合っているなら、Spring Batchを使うことができます。

また、Spring Batchを使用して、のジョブリポジトリについても評価する必要があります。 Spring Batchは、ジョブのメタデータとオプションではないデータを格納するためにデータベース(メモリまたはディスクのいずれか)を必要とします。

私は、あなたがジョブフレームワークを必要とし、あなたがジョブそれを呼び出しているので、私はそれに応じて私の答えを修正することを実行しているロジックのどのような理由として、より詳細な説明を置くべきだと思います。

+0

OK、ここに行きます:) 1.私は、特定のデバイスに対していくつかのステップを含むジョブを実行する必要があります。各ステップはデバイスと通信し、 デバイスがそれに与えられた前のコマンドを実行したことを確認するのを待つ。 2.リトライ、リカバリ、スケジューリング機能が必要です(スプリングバッチとクォーツを組み合わせたもの) 3。リードプロセスライトについては、基本的にはデバイスに関するコマンド要求を受けていますが、DBを少し読んで、ジョブ/タスクを成功させるためにはすべてのパスが必要な長い待ち時間を開始します。 – BananaHamlet

+0

また、関連するIMDG/DBを選択(正当化)できます。 同時実行性がスコープの外にあります(ジョブ機構外にあります)。 心に浮かんだ選択肢は、アクターの俳優でした。 (デバイスの仕事は、ステップとして子供の俳優を作成します)。 – BananaHamlet

+0

私は助けてくれてありがとうことを忘れました:) – BananaHamlet

関連する問題