アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になっております。

ASP.NET(VB.NET)にて以下の構成のWEBシステムを構築しました。
WEBサーバ(Win2003Serv)⇒APサーバ(Win2003Serv)⇒DBサーバ(SQL2000Serv)
基本的には通常の動作においては問題なく動いています。

しかし負荷試験を行い250ユーザーにて処理を行うと、クライアント側のWebサービスに対する待機する時間を超えるタイミングで以下のようなエラーがスローされてしまいます。

(1) 操作がタイムアウトしました。
(2) 基になる接続が閉じられました : 要求がキャンセルされました。

負荷試験の内容はTOP画面を250ユーザーにて約10分間表示し計測しています。
TOP画面では初期表示時にWebサービスでAPサーバに繋ぎにADO.NETにてDBからデータ取得を4箇所で行い画面表示を行っています。

(1) の原因としてはADO.NETのMaxPoolSize(現在はデフォルト値)などが関係しているのではと思っているのですが確信には至っておりません。
(2) は全く検討が付きません。

まだまだ調査途中で書き込む段階ではないと思うのですが時間がないため書き込んだ次第です。

同様の現象での解決法や原因以外でも何でも構いませんのでご教授お願いいたします。

A 回答 (1件)

>(1) の原因としてはADO.NETのMaxPoolSize(現在はデフォルト値)などが関係しているのではと思っているのですが確信には至っておりません。



そうなら例外が発生しているでしょう。
例外をテキストファイルかイベントログなどにロギングするとか。

>(2) は全く検討が付きません。

「ASP.NET Webサービス 基になる接続が閉じられました」でググるとか。

WebServiceサーバ側
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.ph …

WebServiceクライアント側
http://support.microsoft.com/kb/819450/ja

この回答への補足

回答ありがとう御座います。

> 例外をテキストファイルかイベントログなどにロギングするとか。

AP側でログ出力をしているのですが例外は挙がっていませんでした。
処理数がMaxPoolSizeを超えていると想定して、例外ではなく待ち状態になりタイムアウトが発生しているのかと思っていました。

> 「ASP.NET Webサービス 基になる接続が閉じられました」でググるとか。

「基になる接続が閉じられました」では数件かヒットしたのですが「要求がキャンセルされました。」まで辿り着けていません。
記載頂いた「WebServiceクライアント側」の内容が一番近いように思えるのですが。。。負荷試験の環境がローカルには無いので試せてはいません。

また記載頂いた「WebServiceサーバ側」の内容を読ませて頂きました。
connectionModelはデフォルト値"2"になっていました。
そうなると250ユーザがWEBサーバに処理を投げてもWEBサーバとAPサーバの間は2スレッドでしか処理されないのでWebサービスを呼び出したところで待ち状態になり、待機時間を越えてタイムアウトになってしまうのでは。。。っと思ったのですが、こちらも負荷試験の環境がローカルには無いので試せてはいません。

試せてはいないのですが、かなり高い確率で的を得ていると思えます。
ありがとう御座いました。

負荷試験の環境で確認しまして再度お礼申し上げます。

補足日時:2006/12/05 22:06
    • good
    • 0
この回答へのお礼

お礼が遅くなり申し訳御座いません。
ネットが繋がらないトラブルがありまして。。。

負荷試験の環境でMachine.configを確認したところMS推奨のCPU×12となっていました。
それでも更に同じ現象が起こるので値を変えて原因を追究し以下を修正することでエラーを防ぐことが出来ました。
・APへの接続数を減らすよう修正しました。
・PGを見直しDBへのトランザクション管理が成されていない箇所を修正しました。

しかし今は新たな問題があり、WEB側のCPU使用率が100%になったままで下がらないと言った状態です。
サーバの詳細までは分かりませんがメモリ10GB、CPU×4と高性能マシンなので100%は問題はありとの事です。

HTMLで表示されると100~150KBの動的画面を5画面遷移していくのですが何処に原因があるのか模索中です。
各ポストバック毎でAPへ接続が1回あります。
また以下の処理を行っています。
・Server.Transferによる画面遷移
・FindControlによるコントロール参照

提供できる情報が少ないのですが何かご指摘頂けるような事はありますでしょうか?

お礼日時:2006/12/08 14:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!