速度

パフォーマンスが遅いことは従業員からの主な不満の1つです。 この問題がデバイス、ネットワーク、インフラストラクチャのどこから発生しているのか特定が困難であり、アプリケーション自体にも起因している可能性があります。 ソフトウェア・アズ・サービス (SaaS) アプリケーションの場合、根本的な原因が社外のネットワークやインフラレベルにあることもあります。

ページ読み込みタブ

平均ページ読み込み時間は、http://w3.orgサイトで定義されたナビゲーションタイミングレベル2の onload イベントを使用して測定されます。 詳細については、以下のナビゲーションタイミングAPIセクションを参照してください。

Page loads tab

ナビゲーションイベントとは何ですか?

ナビゲーションイベントとは、URLの変更によりブラウザが新しいエントリで履歴を更新する際にウェブページ上でトリガーされる変更のことです。 ブラウザの履歴は訪問したアドレス一覧で、ユーザーが以前に訪れたページに戻ることができます。

ダッシュボードは、即時報告されるナビゲーションの種類として2つの形式を提供します:

  • ハードナビゲーションは、ブラウザが全く新しいページを読み込む要求を送信するときに発生します。

  • ソフトナビゲーションは、ブラウザが新しいページを読み込まない非同期ページ読み込みの速度測定を可能にします。 ソフトナビゲーションはシングルページアプリケーション(SPA)で非常に一般的です。 各アプリケーションに対してソフトナビゲーションを有効にする必要があります。 詳しくはウェブアプリケーションの設定のドキュメントを参照してください。

Hard navigations versus soft navigations

ハードとソフトナビゲーションの違い

ハードナビゲーションイベントは、ドキュメントが読み込まれる技術的なレベルでトリガーされます。 この動作はブラウザ開発者ツールのネットワークタブを使用して識別することができます。 ウェブリクエストの1つがドキュメントタイプである必要があります。 ソフトナビゲーションは、ブラウザがドキュメントリクエストタイプを読み込まないその他のナビゲーションです。

Searching for document requests using developer tools

ページ読み込みが遅延する場合のトラブルシューティング

ページ読み込みダッシュボードの柔軟性、機能性、使いやすさにより、IT専門家は問題領域をすばやく特定し、特定のアプリケーションのページで問題を抱えている従業員に集中することができます。

しきい値やフィルタを設定することで、ページ読み込みの遅さをトラブルシュートできます。 各アプリケーションに対してしきい値を個別に設定することができますが、デフォルト設定も使用可能です。 しきい値のドキュメントを参照し、さらに詳細な情報を入手してください。

ページ読み込みを遅くするトラブルシュートには様々なアプローチがあります。

  • 以下のイラストに示すように、Page loadsウィジェットのフラストレーション指標をクリックすることで、すべてのデータをフィルタリングできます。 これにより、問題のある領域に素早く集中することができます。

  • フラストレーションフィルターが適用された後、主要ページセクションで検索を絞り込むことができます。 ページ読み込みの問題がある特定の主要ページをクリックしてさらにフィルターを適用します。 影響を受けた従業員の数が右側のパネルの詳しく調査パネルの上部に表示されます。

  • タイムラインでピークを選択し、クリックアンドドラッグアクションを使用して調査を開始できます。 その後、ページ読み込みウィジェットのフラストレーションフィルターを適用して検索を絞り込みます。

  • ソフトナビゲーションがオンになっている場合、ブラウザ、オペレーティングシステム、場所、その他のオプションでデータをフィルタリングするためのページ読み込み時間ウィジェットを使用できます。 ジオロケーション機能の詳細については、ジオロケーション設定のドキュメントを参照してください。

  • さらに調査するパネルを使用して、ページ読み込みの遅さについての検索を続けてください。

  • 診断機能を使用して、パフォーマンスが遅い問題を診断できます。 右メニューの診断アイコンをクリックして、アプリケーション遅延トラブルシュートパネルを開いてください。

  • 接続機能をフィルターと組み合わせて使用し、ネットワークインターフェイスやVPNステータスとウェブアプリケーションの問題を関連付けることができます。 さらに調査するパネルで接続をクリックすると、新しい調査ダッシュボードが開き、必要なNQLステートメントと結果のテーブルが自動的に生成されます。

ページ読み込みメトリクス

ハードナビゲーション

従業員の数は、少なくとも1回のページロードアクションを実行した人数を表しています。 それはユーザーが上で視覚的な相関関係を簡単に追跡できるように自身のタイムラインにマッピングされています。 これは、フォーカスタイムを基にした導入ダッシュボードのものと異なることがあります。 たとえば、ブラウザのタブにフォーカスしているが、ナビゲーションイベントをトリガーする行動を行わない場合があります。 例えば、テキストの読み取りやスクロールは通常ナビゲーションをトリガーしません。

タイムラインでは、データが次のカテゴリごとに内訳されています:

  • バックエンドはバックエンド上の応答時間の推定です。 その精度はアプリケーションのパフォーマンスによります。

  • ネットワークはリダイレクト、DNSルックアップ、TCP接続、応答時間にかかる時間に対応するネットワーク応答時間値を指します。

  • クライアントはクライアント応答時間値を指し、ページの総読み込み時間からバックエンドとネットワークの時間を引いたものに等しい: クライアント時間 = 総ページ読み込み時間 - (バックエンド時間 + ネットワーク時間)。

データ検索の調査を続けて、さらに調査するパネルを使用してデータの内訳をキャリーオーバーし、バックエンド、ネットワーク、クライアントによって分類されます。

ナビゲーションタイミングAPI

ページ読み込み時間の測定と計算が正しく理解されるためには、ナビゲーションタイミングAPIをイベントと属性ごとに分解し、古いページがアンロードされてから新しいページがロードされるまでを考察します。 プロセスに関与するイベントと属性についての説明図と定義を以下に示します。

Resource timing

バックエンド時間とは、クライアントが requestStart でリクエストを開始してから、responseStart でレスポンスを受信し始めるまでの時間です。

ネットワーク時間は次の時間の合計です:

  • redirectStartredirectEnd

  • domainLookupStartconnectEnd

  • responseStartresponseEnd

クライアント時間とは、unloadEventEnd から loadEventEnd までの時間からバックエンドとネットワークの時間を引いたものです。

リソースタイミングイベント

アンロードイベント アンロードイベントは、ユーザーがページから離れるときやページがリロードされるときにトリガーされます。

リダイレクト HTTPリダイレクトを追跡するのにかかる時間。

DNS ドメイン名を解決するのにかかる時間。

TCP ブラウザとウェブサーバ間でソケット接続を確立するのにかかる時間。

SSL ブラウザとウェブサーバ間でセキュアソケット接続を確立するのにかかる時間。

リクエスト ドキュメントレスポンスの最初のバイトを待つのにかかる時間。

レスポンス ドキュメントレスポンスをダウンロードするのにかかる時間。

処理 ブラウザがDOMを処理して構築するのにかかる時間。

ロード DOMの読み込み時間。DOM処理を含みます。

転送されたバイト数 HTTPレスポンスのサイズ。

DOMイベントと属性

ページが完全に読み込まれる前にトリガーされる様々なオンロードイベントがあります。 ブラウザはオンロードイベントを起動し、ページ上で追加の関数やロジックをトリガーすることができます。 そのようなイベントもページ読み込み時間の計算プロセスに使用されます。

domLoading 属性は全プロセスの開始時刻を提供します。

domInteractive  イベントは、ブラウザがHTMLを解析し、DOMを構築したときにトリガーされます。

domContentLoadedEventStartdomContentLoadedEventEnd イベントは、レンダー木の作成の開始と終了時刻をマークします。 プロセスはCSSオブジェクトモデルが準備されたときに始まります。

domCompleteイベントは、処理が完了し、すべてのリソースが準備が整ったときにトリガーされます。

上記に示されたタイミング要素の合計が常に総ページ読み込み時間と等しいとは限らないことに注意してください。例えば、同時実行OSタスクなどの他の要因がページの読み込み時間に影響を与える可能性があります。

ソフトナビゲーション

ソフトナビゲーションは次の一連の異なるイベントで構成されます(いくつかはオプションです):

  1. 利用者の操作および/またはハードナビゲーションがソフトナビゲーションをトリガーする

  2. ページのレンダリングの変更

  3. バックエンドからの新しいリソースの要求

  4. バックエンドの応答待ち時間

  5. バックエンドからのリソースの受信

  6. 新しいリソースに基づくクライアント側の処理

上記の情報は、バックエンド、ネットワーク、クライアントに次のようにタイムラインに適用されます:

  • クライアント時間は 1. & 2. & 6. の合計です。

  • ネットワーク時間は 3. & 5. の合計です。

  • バックエンド時間は 4. です。

トランザクションタブ

トランザクションはページ読み込みの監視を補完するもので、ウェブアプリケーション内の重要な状態変化を追跡します。これには、ページの完全な再読み込みが必ずしも必要ではありません。

時間を経ても平均トランザクション継続時間の進展により、現在の傾向をすばやく特定し、それが逆行しているのか安定しているのかを確認できます。

さらに調査するサイドパネルを使用して不完全なトランザクションを調査できます。 なぜ不完全なのかを理解するためのトランザクションの可能なステータスは、NQLデータモデルにリストされています。

トランザクションメトリクス

トランザクション継続時間は、トランザクション終了時点と開始検出時点の時間差に対応します。 完全なトランザクションのみが、ダッシュボードでの継続時間の計算に考慮されます。

従業員数は、特定の期間に1つ以上のトランザクション(完全または不完全)を行った従業員の人数を表しています。

ブラウザ、オペレーティングシステム、場所、その他のオプションでトランザクション継続時間をフィルタリングしてください。 ジオロケーション機能の詳細については、ジオロケーション設定のドキュメントを参照してください。


関連するタスク

Last updated

Was this helpful?