2017-02-07 6 views
0

我々はAzureストレージに書き込まれたBLOBファイルからトリガしているしたいと思います非常に長時間実行される操作(潜在日)を持っています。この仕事は、1年に1回、1日に数回、または数日にわたって何度も開始することができます。Azureバッチジョブはウォッチャープロセスが必要ですか?

Azure Batchジョブは実行時にバッチジョブで 'ウォッチャー'プロセスを実行する必要がないと仮定した場合とまったく同じに見えます。私たちが持つことができる場合たとえば、Azureの機能は、BLOBのイベントをキャッチするバッチジョブを起動し、ジョブを起動し、「火と忘れる」タイプのファッション、そして機能が、それは我々が必要とする正確に何である終了します。私たちは仕事の進捗状況を報告することについてあまり心配していません(SQLテーブルを使用しています)。仕事を開始してから帯域外を監視したいだけです。

バッチジョブを開始し、ジョブがバックグラウンドで実行され続けている間にイニシエータプロセスが消える方法はありますか?そうでない場合は、常に実行中のプロセス(作業者ロールまたはファブリックワーカー)を持たなくてもこれを行う方法はありますか?私たちは、プロセス(労働者/ファブリックの役割、機能アプリの機能の計画を使用して、など)時間の99.9%が、それは何もしていないときに、すべての時間を実行していることを回避しようとしています。

答えて

1

短い答え:いいえ、ウォッチャープロセスは必要ありません。

Azureのバッチタスクは、本質的に非同期です。タスク(仕事の下)を追加すると(タスクは計算ノードかに正常に完了している場合ではなく)、バッチサービスに対するあなたのコールはすぐに送信アクション自体の成功または失敗を返します。バッチサービスは、プール内の利用可能な計算ノード間でタスクをスケジューリングし、内部的にタスクの進行状況を監視したり、統計情報を更新したりします。

これを選択すると、任意のSDK、REST API、またはクライアントツールを使用している提出俳優とは独立しています。または、タスクで外部モニタまたはデータストアを更新している場合は、説明したように帯域外で監視することもできます。または、タスクをスケジュールし、それを監視しないこともできます。サービスでは、タスクを監視/監視する必要はありません。

+0

あなたはまた、誰が見ていないときに、未使用のノードをシャットダウンする式を自動スケーリング有効にすることができます。) –

関連する問題