2

Navigation Timing API を使用して、次のような基本的なネットワーク パフォーマンス測定値を収集しています。

  1. Domain Aのページから、Domain Bの別のページをダウンロードする DOM に iframe を挿入し、長いランダム クエリ文字列をDomain BのURL に適用してキャッシュを無効化します。

  2. ドメイン B ページの JavaScript は数秒待機してから、window.performance.timing の内容を読み取ります。

数値は、1 つのことを除いて予想どおりに見えます: connectEnd はほとんどの場合、connectStart と同じです。何が起こっているのかを誤解していない限り、持続的な接続は行われず、ブラウザはドメイン Bのドキュメントをキャッシュから取得するべきではありません。したがって、ブラウザはDomain Bへの新しい接続を確立する必要があり、 connectEnd から connectStart を引いた値は、そのためにかかる時間を反映する必要があります。

これを Firefox、Chrome、IE (IE 10) でテストしました。Firefox と IE では、connectEnd が connectStart に等しいことしか確認できませんでした。それらは一般的にChromeでも同じですが、connectEndがconnectStartよりも大きいことが1回見られました。

テスト ページはhttp://test-pages.s3.amazonaws.com/test-navtiming.htmlで入手でき、http://www.wildlemur.com/files/navtiming.html で別のテスト ページをダウンロードします(さらにランダムクエリ文字列)。connectStart と connectEnd の値がブラウザ コンソールに表示されます。

このシナリオで、connectEnd が connectStart と同じになることが多い理由は何ですか?

4

0 に答える 0