Azureアプリケーションが、複数のワーカー(永続ストレージを使用)に分散される長時間実行の計算タスクを実行するためのサービスをエンドユーザーに提供することは可能ですか?
また、デスクトップ.Netアプリケーション(ビュー)からアクセスするWebサービスを介してこれを提供することは可能でしょうか、それとも常にAzureでWebインターフェイスを使用する必要がありますか?
Azureアプリケーションが、複数のワーカー(永続ストレージを使用)に分散される長時間実行の計算タスクを実行するためのサービスをエンドユーザーに提供することは可能ですか?
また、デスクトップ.Netアプリケーション(ビュー)からアクセスするWebサービスを介してこれを提供することは可能でしょうか、それとも常にAzureでWebインターフェイスを使用する必要がありますか?
AzureはWCFホスティングを簡単に処理し、WCFエンドポイントを内部(Azureホストアプリの場合)または外部(ローカルにインストールされたアプリの場合)にすることができます。これを試してください:新しいAzureクラウドアプリケーションを作成し、WCFサービスWebロールを追加します。これは基本的にIISでWCFをホストし、探しているものを提供します。
また、WCFホスティングに必要なパッチについては、こちらの回答をご覧ください。
最後に、分散処理について:処理がアトミックアクションとして行われるが、処理できるものの数を単純にスケーリングしたい場合、これは非常に簡単です。キューから読み取り、次のアイテムを処理するワーカーロールを作成するだけです。次に、WCFサービスは、実行する作業の要求をキューに入れるだけです。ワーカーロールがタスクを完了し、その結果をストレージに書き込むと、次のリクエストを読み取ります。次に、ワーカーロールインスタンスの数をスケーリングして、VMインスタンスのセット全体でリクエストを処理できます。一方、複数のワーカーロールにまたがって個々のワークアイテムを処理する場合は、個々のワーカーロールインスタンスに指示するための何らかのタイプのカスタムメカニズムを作成する必要があります。このためには、おそらく各ワーカーロールに内部エンドポイントを設定する必要があります。WCFサービスでは、