お世話になっております。
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) は全く検討が付きません。
まだまだ調査途中で書き込む段階ではないと思うのですが時間がないため書き込んだ次第です。
同様の現象での解決法や原因以外でも何でも構いませんのでご教授お願いいたします。
No.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サービスを呼び出したところで待ち状態になり、待機時間を越えてタイムアウトになってしまうのでは。。。っと思ったのですが、こちらも負荷試験の環境がローカルには無いので試せてはいません。
試せてはいないのですが、かなり高い確率で的を得ていると思えます。
ありがとう御座いました。
負荷試験の環境で確認しまして再度お礼申し上げます。
お礼が遅くなり申し訳御座いません。
ネットが繋がらないトラブルがありまして。。。
負荷試験の環境でMachine.configを確認したところMS推奨のCPU×12となっていました。
それでも更に同じ現象が起こるので値を変えて原因を追究し以下を修正することでエラーを防ぐことが出来ました。
・APへの接続数を減らすよう修正しました。
・PGを見直しDBへのトランザクション管理が成されていない箇所を修正しました。
しかし今は新たな問題があり、WEB側のCPU使用率が100%になったままで下がらないと言った状態です。
サーバの詳細までは分かりませんがメモリ10GB、CPU×4と高性能マシンなので100%は問題はありとの事です。
HTMLで表示されると100~150KBの動的画面を5画面遷移していくのですが何処に原因があるのか模索中です。
各ポストバック毎でAPへ接続が1回あります。
また以下の処理を行っています。
・Server.Transferによる画面遷移
・FindControlによるコントロール参照
提供できる情報が少ないのですが何かご指摘頂けるような事はありますでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 情報処理技術者・Microsoft認定資格 応用情報処理技術者試験のシステム利用率の計算について 2 2022/03/28 07:43
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- サーバー ログオンユーザーがいない場合に自動再起動 1 2022/09/28 09:53
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- サーバー メールサーバーについて詳しい方、メールサーバーの管理業務経験のある方、教えてください。 3 2022/11/12 18:24
- その他(コンピューター・テクノロジー) 以下の用語がわかんないので教えてください!!! ①プロトコルの変換をする装置。トランスポート層からア 1 2023/07/05 09:10
- 中途・キャリア 至急。転職試験合否について。 ご覧頂きありがとうございます。 転職を試みている社会人2年目20歳の第 4 2023/01/07 21:56
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
NetworkStreamからのRead()で、...
-
PerlからDB接続し、データ登録...
-
Socket通信で、通信終了のイベ...
-
ASPとCGIの違い
-
ボタンが活性化の場合とは、ボ...
-
三菱GOTの画面切り替えについて
-
int型の内容をbyteの配列にコピー
-
VB6 開発環境のエディタに行...
-
VB.NET DataReaderが開かれている
-
ActiveWorkbook.Pathの一つ下の...
-
struts-config.xmlの設定
-
「<c:forEach タグが終了し...
-
JSPでのリストボックス表示
-
C++のDLLでコマンドライン引数...
-
フォーム上で押されたボタンに...
-
サブミット後、自動的に画面を...
-
ServletからServletへの値渡し
-
腕時計の時報をならないように...
-
C# ログイン画面からメイン画面...
-
jspからServletを呼び、元のjsp...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
NetworkStreamからのRead()で、...
-
ハウスキープ処理について
-
ASPとCGIの違い
-
CPUを2つ搭載するといいのです...
-
パラメータが渡らない・・・
-
Webサービスについて(基になる...
-
処理終了後、他のプログラムへP...
-
IIS+VBScriptでの処理待ちについて
-
CGI(Perl)のメッセージボックス...
-
3層クライアントサーバとMVCの関係
-
【php】プログラムの設計案
-
画面サイズ取得について
-
Perlで処理の進行状況をユ...
-
JSPでのリアルタイムな時刻表示
-
<%@ language="VBScript" %>
-
サーバーの仕組みについて
-
PHPとHTMLとCSSの関係性について
-
C++でシリアル通信
-
構文エラー
-
ASPでDLLの呼び出し
おすすめ情報