1

ページフェッチの合計秒数を取得してデータを表示することは可能ですか?

リンクをクリックした瞬間から、すべてのデータがページに表示される瞬間まで、OnInit、onrender、pageload onprerender などで行われるように.....それは可能ですか?

ありがとう

4

4 に答える 4

1

はい、可能です。web.config ファイルにコードを追加してアプリケーションを実行するだけで、ページのレンダリング直後に読み込み時間が表示されます。マウスをスクロールして詳細を取得します。

    <system.web>

        <trace pageOutput="true" requestLimit="10" enabled="true" localOnly="true"        traceMode="SortByTime" mostRecent="true"/>

</system.web>

注: web.config ファイルに既に存在する system.web にコードのトレース部分を記述する必要があります。

于 2012-07-09T09:35:41.710 に答える
0

PHP がスクリプトを実行するのに必要な時間 (開始から終了まで) を簡単に確認できます。開始時刻と終了時刻を保存するだけです。ここを見てください: http://nl.php.net/manual/en/function.microtime.php

ただし、これはユーザーが経験する時間ではありません。例: PHP が HTML を生成するのに 0.1 秒必要で、HTML に 100 個の大きな画像が含まれている場合、実際のページ読み込みには 0.1 秒よりもはるかに長い時間がかかります。エンドユーザーが経験する実際の時間は、その間にある (そして PHP を呼び出す必要がある) Web サーバー、ネットワーク速度、キャッシュなど、多くの要因に依存します。

あなたの最善の策は、Javascript を介してこれにアプローチし、body にアタッチできる onLoad イベント ハンドラーを使用することだと思います。外部ウィンドウを使用して、クリックとオンロードの起動の間のタイミングを調整します。

また、異なるキャッシュ設定、異なるネットワーク速度などを持つ他の訪問者では結果が異なる可能性があることに注意してください。したがって、近似値しか取得できません。

于 2012-07-09T08:38:16.493 に答える
0

ページを表示する前に、サーバーから現在の時刻を持つ変数を送信します。

HTML ページで、onload() で JavaScript 関数を実行します。この関数は、ページが読み込まれた後に呼び出されます。この関数で現在の時刻を再度取得します。

両方の時間変数を一致させます。1 つはサーバーから送信され、もう 1 つは onload() 関数で送信されます。秒数が得られます。

于 2012-07-09T09:25:31.950 に答える
0

可能ですが、クリックからフルロードまでのロード時間は非常に多くの要素で構成されているため、少し複雑です。

  1. サーバーへのリクエスト (接続の往復、場合によっては DNS ルックアップなど)
  2. リクエスト処理サーバー側 (これは、APS コード内で測定できます)
  3. いずれかのイベントが発生するまでロードをリクエストする

簡単に言えば、単一の方法で測定することは不可能であり、多くを組み合わせることは面倒であり、測定するすべての部品を含めることはできません.

この特定のケースではonclick、現在のタイムスタンプ (ミリ秒の精度) で ajax リクエストを (リンクで) バインドし、現在のタイムスタンプで 2 番目のリクエストを実行し、2onloadつを差し引くことが最善の方法です。

于 2012-07-09T08:55:31.290 に答える