17

私は、私たちの Web サイトのエンド ユーザー エクスペリエンスを監視し、それをサーバー側に既に記録されているタイミング情報とリンクさせたいと考えています。私の推測では、リクエストの開始時 (window.onbeforeunload) とロードの終了時 (window.onload) にタイムスタンプを取得するために JavaScript が必要になると思います。基本的にこれ - 「Web アプリケーションの応答時間の測定: クライアントの紹介

  1. より良いアプローチはありますか?
  2. どのようなパフォーマンスの低下が予想されますか (桁違い)?
  3. 結果はどのくらい良いですか?
4

8 に答える 8

13

Yahooのブーメランもあります。

Jiffy と Episodes には存在しないいくつかの高度な機能があります。Navigation Timing API をサポートするブラウザー (Chrome 6、IE 9) でサポートします。

于 2010-12-13T19:14:40.043 に答える
9

完全を期すために、最新のブラウザーの一部でナビゲーション タイミング API を使用できるようになりました: https://developer.mozilla.org/en-US/docs/Navigation_timing

function onLoad() { 
  var now = new Date().getTime();
  var page_load_time = now - performance.timing.navigationStart;
  console.log("User-perceived page loading time: " + page_load_time);
}

サードパーティ編集

caniuse.com のナビゲーション タイミングに基づいて、現在広くサポートされています (10/2016)

于 2012-09-04T11:30:58.013 に答える
7

編集(2013):@ yasei-no-umiが提案するように、代わりにBoomerangを試してください。それは積極的に維持されています。

-古い答え-

Jiffyを使用します。

使用と変更は非常に簡単です。(JiffyのApache + perlの代わりに)独自のサーバー側コードを作成し、JiffyのJSを使用しました。

パフォーマンスのペナルティについては、クライアント側にはありません。JS自体は非常に高速であり、サーバーへのレポートはページの読み込み後にXHRを使用して実行できます。これは、ユーザーエクスペリエンスには何の影響も及ぼしません。サーバー側では、2倍の数のリクエストを受け取ります。それがボトルネックである場合は、タイミング応答のためだけに別のサーバーをセットアップできます。

于 2009-04-27T12:18:27.000 に答える
3

yslow (firefox 拡張機能) のようなものを利用するのはどうですか?

于 2009-02-13T20:13:14.327 に答える
2

Jiffyの代わりにEpisodes があります

どちらも、Javascript を計測してさまざまなタイミングを追跡し、それらのタイミングを中央サーバーに記録する必要があります。

于 2009-05-07T19:09:38.270 に答える
1

「コールバック」(ページ レンダリングの ID を表すパラメーターを含む 1x1 の透明 GIF 画像) がページにあり、「ページを表示しました」をデータベースに記録します。これは、ページ自体が記録されているものと同じ ID を持つレコードであり、レンダリングが終了するとログ エントリがあります。

したがって、次の時間があります。

  • ページ準備開始
  • ページ作成・対応終了
  • レンダリングが完了したときにクライアントに電話をかけました

「遅い」クライアント (CPU または ISP/帯域幅) を理解するのに役立ちます。

ホームをコールしない PS ページ レンダリングも重要です。ユーザーがクリックしてオフにしました (そのセッションの他のページ レンダリングが Phone Home を記録したと仮定します)。

于 2009-02-13T20:09:30.497 に答える
-1

以下の組み合わせを使用する傾向があります。

Firefox: Web 開発者ツールバー Firebug YSlow

IE: フィドラー

これらすべての中で、ロード時間を改善するために何ができるかについては YSlow が最良の情報を提供することがわかりましたが、Fiddler は、ネットワーク経由で期待できることに関する最良の全体的な情報を提供し、さまざまなネットワーク速度をシミュレートすることさえできます.

于 2009-04-27T12:23:17.863 に答える
-1

私はこれらの方法にかなり懐疑的です。これらの方法の中には、必要以上に複雑なものもあり、このデータの正確性には疑問があります。私がしたいことは、テスターに​​さまざまなネットワークにアクセスしてもらい、Firebug などを使用させることです。

http://getfirebug.com/

一体何のために。最近 SOSP に提出された、AjaxScope というツールに関する興味深い論文を次に示します。興味深いことに、これは MS Research が発表した学術記事で、Firefox の Javascript 実装が Internet Explorer よりも何倍も優れたパフォーマンスを発揮するケースがいくつかあることを示しています。:)

http://research.microsoft.com/en-us/groups/rad/sosp07.pdf

于 2009-02-13T20:13:37.743 に答える