2

システムで ASP.Net (VB.Net) アプリケーションを構成しています。私は Visual Studio 2010 を使用しており、コードをコンパイルし、コンパイルしたバージョンをサーバーにデプロイしました。両方の場所で、長い間(1分以上)ページの応答を受け取ります。

奇妙なこと:

通常の(1秒未満)であるページロードハンドラーへのエントリからページクローズハンドラーからの終了までにかかる時間を計算するコードを配置しました。アプリケーションには http モジュールがなく、Global.asax もページにもオーバーライドされた他のハンドラーがありません。

質問 1: ページの読み込みからページを閉じるまでの時間が非常に短い場合、応答に時間がかかりすぎるのはなぜですか? 質問 2: 応答を待っているときに何が起こっているかを実際にデバッグするために使用できる手法は何ですか?

前もって感謝します。

-----更新--------- 以下の krshekhar の質問に応えて、HttpWatch から取得したページ応答のスクリーンショットを添付します

ここに画像の説明を入力

4

3 に答える 3

1

ページのサイズは?
Mozilla Firefox を使用します。
firebug をダウンロード
する add on why-slow yahoo add on をインストールします。
また、レポートで使用可能なオプションを確認してください。

于 2012-12-26T12:26:01.410 に答える
0

Page_PreInit イベントから Page_Unload イベントまでのタイミングを試してください。そうすることで、よりまともな見方ができるはずです。また、投稿したタイミングは通常の LOAD、または SUBMIT (またはポストバック) イベントですか?

さらに、データベース接続はコードの内部または外部で処理されていますか (つまり、タイミングは、必要なネットワーク接続を確立するのにかかる時間をキャッチできますか)?

于 2012-12-26T15:03:53.000 に答える
0

「ページを閉じる」ハンドラーについて言及しましたが、これは何ですか? ページ クローズ イベントは、サーバー イベントではなくブラウザ イベントであるため、これがどのように発生するかは不明です。

あなたのトレースから、master.aspx は、クライアント要求が送信されてからレンダリングが完了するまでに 270 秒かかっていると想定しています。これがサーバーにデプロイされたときだけでなく、ローカルでも発生していることを考えると、少なくとも 1 つのコード セクションで実行にかなりの時間がかかっている可能性があります。

まず、ページ読み込みイベントにデバッグを追加して、実行にかかる時間を確認することをお勧めします。Debug.WriteLine("Point x reached at " & Now.ToString("yyyy-MM-dd hh:mm:ss.nnn) でこれを行うだけで、いつヒットしているかがわかりますそこから、時間がかかっている明らかな領域が表示される場合があります。

データのフェッチに予想よりも時間がかかっていることに気付いても、まったく驚かないでしょう。マルチスレッドのデータ読み込みを使用していますか?

于 2012-12-26T14:14:44.050 に答える