0

Web/Worker ロールで定期的に (1 日ごとに) 特定のタスクを実行したいと考えています。クラウド サービスに複数のインスタンスがあり、1 日にこれらのインスタンスの 1 つだけがこのタスクを実行するようにします (たとえば、Instance0 は 1 日実行でき、翌日は Instance1 が実行できますが、0 と 1 は試行しません)同じ日/期間に同じ仕事をすること)

Azure キューは、これを実現するための優れた方法のようです。これは、設計上、1 つのインスタンスのみがメッセージをデキューするためです (作業後にメッセージが削除されることを前提としています)。

私が問題を抱えているのは、このメッセージのコピーを 1 日に 1 つだけキューに入れる方法を考え出すことです。これを行う唯一の方法は、Azure スケジューラ ジョブから毎日メッセージをキューに入れることです。

Azure スケジューラに関する私の問題は、すべてのデプロイで使用しているストレージ アカウントごとにジョブを作成する必要があるという事実です。

スケジューラの依存関係を利用せずに、クラウド サービス内からこれを行う方法はありますか?

4

2 に答える 2

0

1 日に 1 つのジョブを実行する必要があることがわかっている場合、キューを使用する必要がある理由がわかりません。スケジュールされたジョブを 1 日に 1 回実行するだけです。特定の条件が満たされた場合にのみジョブを実行する必要がある場合は、このロジックをスケジュールされたタスクに組み込むだけです。テーブルなどにプロパティを設定することもできます。

于 2015-07-11T21:08:50.333 に答える