私は小さなタスクに分割することができます。それぞれのタスクは完了までに最大30分かかる場合があります。タスクが完了したら、クリーンアップタスクを実行する必要があります。完了タスクを含むサービスファブリックタスクキュー
の各タスクには、別のマシン上で実行する必要がありますCPU集中型の操作です。
問題は、すべてのタスクが完了したときを知る方法が見つからないということです。どのようにしてすべてのタスクが完了したら、追加のクリーンアップタスクを実行できるように、サービスファブリックでアプリケーションを作成できますか?
さらに、タスクが失敗したり予期せずシャットダウンした場合、キャンセルシグナルがすべてのワーカーに送信され、次にクリーンアップタスクが呼び出されるようにするにはどうすればよいですか?
これらのタスクを開始するプロセスは何ですか。別のノードでどこで実行されますか?どのサービスを使用していますか?私たちはC# 'タスク'について話していますか?サービスファブリックはイメージにどのように適合していますか? –
ジョブは外部サービスから開始します。タスクは別のワーカーで実行する必要があります。たとえば、シナリオでは、40個のノードのサービスファブリックインスタンス上に10個のジョブ、100個のタスクを持つ各ジョブが含まれている場合があります。各ノードは、一度に1つのタスクしか実行できません。作業者はまず、ジョブ#1の最初の40個のタスクを実行し、次の40個のタスクを実行し、最後に20個のタスクを実行し、次のジョブのために次の20個のタスクを開始します。 – Nican