2009-06-21 36 views
3

マイWebサービスは別のAPIを使用してデータを取得します。私はデータをキャッシュし、それをきれいにし、要求を出したときにユーザーに返します。現時点では多くのリクエストが発生しており、データAPIには1秒間に2回しかアクセスできないため、一部のユーザーがデータやその他のデータを取得しないというエラーが返されています。C#要求キュー

私がやりたいことは、各リクエストをキューに追加し、それらの間に0.4秒のスリープを入れて1つずつ処理することです。すべての要求が処理されるようにキューを常時実行する必要があります。

ASP.NET 3.5でこれをどうすればできますか?

答えて

5

簡単に言えば、MSMQキューを処理するWindowsサービスを作成することをお勧めします。既存のWebサービスは、要求をそのキューに入れます。

ただし、サービスは非同期Webサービスにする必要があります。このようにして、応答を待っている間は、サービスは要求スレッドをブロックしません。

ところで、ASMX WebサービスまたはWCFサービスを使用していますか?これは、サービスを非同期にする方法を決定します。

+0

実際には、URLの詳細に基づいてJSONを返すMVCビューページを使用しています。 mvcコントローラは変数を取得し、表示する項目のリストをビューページに送信します。 リクエストを処理するためにスタンドアロンのWebサービスが本当に必要ですか?もしそうなら、どんなタイプのサービスが一番良いと思いますか? –

+0

リクエストをキューに入れる必要があるとは思われませんでしたか? –

+0

はい、キューに入れて処理する必要があります。 –

関連する問題