0

.Netリモーティングを使用してデスクトップアプリケーションと通信するWebサービスがあります。クライアントまたはユーザーは、このWebサービスを使用して、データベースにデータを挿入または更新しています(処理後のデスクトップアプリケーションを介して)。私が直面している問題は、ピーク時に、このWebサービスを2000〜3000回呼び出して、15〜20分でデータを挿入/更新することを意味します。スレッドの数が約2000まで増加することがわかります。 w3wp.exeのタスクマネージャー)。これらの多くのスレッドを作成するための考えられる理由は何でしょうか?私が見ることができるように、他のWebサービスは50未満のスレッドしか表示していません。

注意:問題の原因となっているWebサービスはdiffアプリケーションプールにあります。

ありがとう

4

1 に答える 1

0

これは、多くの呼び出しが応答を待っていることを意味します。ASP.NET はスレッド プールを使用するため、高速な操作にスレッド プールを使用するか、代わりに ASYNC ハンドラーを使用して、スレッドがプールに戻り、ASP.NET が結果の準備が整うとすぐに新しいスレッドを割り当てるようにする必要があります。

BRLそれは、またはその他のデッドロックの結果である可能性がありDLLます。Web サービス コードにブレークポイントを配置して、ブロックされる場所を見つけてください。

于 2012-04-13T21:35:24.193 に答える