ユーザーが次のようなことができる webservice+servicebus プロジェクトを作成しています
public void ExecuteLongProcess(DateTime fromDate,string aggregateId){}
このメソッドはすぐに戻りますが、バスを介して操作の要求を送信します。
私の問題は、別のユーザーが既に実行されているときに、複数のユーザーが同じ aggregateId で長いプロセスを要求したときに始まります。
私が考えている解決策は、継続的Queue<LongProcessTask>に実行され、実行する必要がある操作を探すタスクです。そのため、一度に1つのプロセスのみを実行するか、将来の実装は異なるaggregateIdの場合は複数のプロセスになります。
このようにして、同じ集計で長時間実行されるプロセスが重複することはありません。
他のアイデア?