トップ回答者
IIS6.0で5多重でしかWebServiceが実行されない。

質問
-
お世話になります。
現在、ASP.NET 2.0/IIS6.0の環境で、WebServiceの負荷テストをしています。
(本来WindowsForms⇔WebService なのですが、現在はsoapUIというツールを使って、負荷テストツール⇔WebServiceでテストをしています。)
負荷テストツールで20多重でリクエストを発行しているのですが、いろいろとログ等を追っておくと、どうやら同時に5多重でしか処理されておらず、キューにかなりの時間とどまってしまっているようです。
ちなみに、通常は6秒ほどで済む処理が、一番長いもので27秒ほどキューにとどまっているために30秒ほどかかってしまっています。
※キューイングされているのではと思ったのは、パケットキャプチャでサーバ側に届くパケットを監視し、WebServiceのコンストラクタで開始時間をログに出力するようにしたところ、最初の5リクエストはリクエストパケットの到着後すぐWebServiceのコンストラクタが呼ばれているのですが、その他は5秒~27秒ほど待ってからWebServiceのコンストラクタが呼ばれていることがわかりました。WebServiceがインスタンス化されてからビジネスロジックの実行はスイスイ流れているようです。
今のところ、特にIISの設定等のチューニングは行っていないため、どこかのデフォルト値(MaxXXX ?)がこの制限の原因になっているのではと想像しています。
どなたかこの「5」というデフォルト値で心当たりはないでしょうか。
それとも僕の勘違いでしょうか。
また、直接的に関係ある/なしに関わらず、IIS/ASP.NETのチューニングに関して情報をお持ちの方がいらっしゃいましたらぜひご助言頂きたいです。
何卒よろしくお願い致します。
- 移動 Wang Huang 2012年10月2日 1:43 (移動元:Internet Information Services 5.x, 6.0 - 全般)
2008年3月3日 2:36
回答
-
勘ですが、Machine.configのprocessModel 要素 (ASP.NET 設定スキーマ)のmaxWorkerThreads属性あたりを試してみてはいかがでしょうか。
2008年3月3日 10:40 -
または、connectionManagement の add 要素 (ネットワーク設定)でしょうかねぇ・・・。
ただ、私の1.1環境だとmaxconnectionの規定値は2なのですが、2.0だと5になってたりするんだっけ。
#昔、似たようなことを調べたような気がするのですが、もう記憶が曖昧です。
2008年3月4日 8:08
すべての返信
-
勘ですが、Machine.configのprocessModel 要素 (ASP.NET 設定スキーマ)のmaxWorkerThreads属性あたりを試してみてはいかがでしょうか。
2008年3月3日 10:40 -
または、connectionManagement の add 要素 (ネットワーク設定)でしょうかねぇ・・・。
ただ、私の1.1環境だとmaxconnectionの規定値は2なのですが、2.0だと5になってたりするんだっけ。
#昔、似たようなことを調べたような気がするのですが、もう記憶が曖昧です。
2008年3月4日 8:08 -
こんにちは!
フォーラム オペレータの鈴木裕子です
かめたろ
さん、回答ありがとうございました!まみや さん、フォーラムのご利用ありがとうございます。
かめたろ さんの回答が、有用な情報と思われたため、
私のほうで回答済みチェックをつけさせていただきました。
回答済みチェックが付くことにより、有用な情報を探している方が情報を見つけやすくなります。
有用な情報と思われる回答があった場合は、なるべく回答済みボタンを押してチェックを付けてくださいねまみや さんはチェックを解除することもできますので、
もし不適切でしたら、修正をお願いします。
引き続き疑問や質問がありましたら、遠慮なく投稿してください。
それでは!
2008年3月7日 9:35モデレータ