背景開発やデバッグには Chrome Dev Tools がよく使用されますが、ページのパフォーマンスを分析するために Chrome Dev Tools を使用する方法を知っている人はほとんどいません。この記事では、ページのパフォーマンス分析に Chrome Dev Tools を使用する方法と、パフォーマンス レポート データを解釈する方法について詳しく説明します。 分析パネルの紹介上の画像は Chrome Dev Tools のスクリーンショットです。画像で丸で囲まれたモジュールの機能は、主にページのパフォーマンスを素早く分析するために使用されると思います。簡単に紹介します。
分析手順まず、分析を行う際には、プラグインなどの要素がページのパフォーマンスに与える影響を排除するために、シークレット モードでページを開くことをお勧めします。次に、ページ キャッシュのチェックを外してキャッシュが無効になっている状況をテストし、ネットワーク条件を調整します。コンピューターを使用してページを開くときは、通常、Wi-Fi などに接続されています。ページのパフォーマンスをより現実的にテストするには、図に示すように、ネットワークを 3G などに調整することをお勧めします。 調整後、パフォーマンス パネルに切り替えます。以下に、機能を説明するボタンをいくつか示します。 上の図は、左から右に次のものを表しています。
ここでは、JD.com のページを例に、キャッシュの無効化をチェックし、Fast 3G ネットワークを使用して、パフォーマンス結果を理解し、最適化ポイントを見つける方法を説明します。 ネットワークパネルから分析する利用可能な情報を確認するには、ネットワーク パネルを見てみましょう。次の図に示すように: 図からわかるように、ページ上のパフォーマンス最適化方法は次のとおりです。
写真から判断すると、パフォーマンス最適化方法として次のような方法も考えられます。
パフォーマンスパネルから分析するパフォーマンスパネルに切り替えて、ページの自動再起動をクリックし、ページの読み込みプロセス全体を記録して、結果を分析します。 ネットワーク&&ホワイトスクリーン パフォーマンス パネルには数多くのパラメーターがありますが、ここではより一般的なパラメーターのいくつかを見ていきます。まず、以下に示すように、白い画面の時間とネットワークの読み込みステータスを確認します。 上の写真では、いくつかの情報を見ることができます。
また、リソースのロードに空白期間があるかどうかも確認できます。上図では空白期間はありませんが、リソースのロードの間に空白期間がある場合は、リソースのロードのアイドル時間が十分に活用されていないことを意味し、調整が可能です。 フレームグラフ フレーム グラフは主にメイン パネルにあります。これは、特定の関数の時間消費を分析するために最もよく使用されるパネルです。図に示すように、それを見てみましょう。 まず、パネルには多くのタスクがあります。時間のかかるタスクであれば、右上隅が赤くマークされます(画像には表示されませんが、これはページの最初の画面の論理処理が適切に分散されていることを意味します)。このとき、赤くマークされたタスクを選択し(ここで 1 つを選択するだけです)、拡大(選択してマウスをスライドして拡大)すると、その特定の時間のかかるポイントを確認できます。 拡大すると、実行されている操作と各関数にかかる時間を確認できます。ここのコードは圧縮されており、圧縮された関数名を確認できます。次に関数をクリックすると、パネルの下部に、その関数が何であるか、どのくらいの時間がかかるか、どのファイルのどの行であるかなどのコード情報が表示されます。この方法では、時間のかかる機能を簡単に見つけることができます。 タブを水平に切り替えてコールスタックやその他の情報を表示することもできるため、対応するコードを見つけやすくなります。ぜひお試しください〜 タイムラインとメモリの状態 「タイミング」領域では、この読み込みの主要な時間を確認できます。
領域を選択して(今回はページの読み込みプロセスを表す白い画面からコンテンツのある領域までの領域を選択)、上記の時間と比較することができます。スクリーンショットは次のとおりです。 また、JS ヒープなどのページ内のメモリ使用量も確認できます。曲線が伸び続ける場合は、メモリリークが発生していることを意味します。図からわかるように、メモリ曲線は長い間下がっていません。メモリリークの可能性があります。メモリは Onload 後に解放されます。メモリリークの詳しい原因と分析方法については、私の記事「Chromeブラウザのガベージコレクションの仕組みとメモリリークの分析」を参照してください。 下部には、ページの時間消費の概要が表示されます。スクリプト時間が長すぎる場合は、js がロジックを実行しすぎていることを意味するため、js の最適化を検討できます。レンダリング時間が長すぎる場合は、レンダリング プロセスの最適化を検討してください。アイドル時間が長すぎる場合は、ページのアイドル時間にいくつかのレポート操作を入れてからレポートするなど、アイドル時間を最大限に活用することを検討できます。 その他のパネル上記は、パフォーマンス パネルで表示できる情報の一部です。さらに、レイヤーパネルを使用して、ページのレイヤーの 3D ビューを表示できます。レンダリングパネル (その他のツール -> レンダリングをクリックして開きます) で、レイヤーボーダーをチェックして、合成レイヤーと RenderLayer 領域を確認します。これは、アニメーションの詰まりを分析したり、GPU アクセラレーションをオンにするかどうかなどを調べるのに役立ちます。メモリパネルと JavaScript プロファイラーパネルは、主にメモリリークを分析するために使用されます。ここではそれらについては説明しません。別の記事「Chrome ブラウザのガベージコレクションメカニズムとメモリリークの分析」をお読みください。 監査ツールで分析するAudits は実際には LightHouse であり、Google のオープンソースの自動テスト ツールです。一連のルールに従って Web ページを評価および分析し、最終的に評価レポートを生成します。パネルは次のようになります。 全体的な状況 監査では主に 5 つの側面に基づいて Web ページにスコアを付けますが、もちろん評価の特定の側面を除外することもできます。デバイス、評価の側面、ネットワークの状態、その他のオプションを選択した後、「監査の実行」をクリックするとレポートが表示されます。 上の図は全体的なレポートです。このページのパフォーマンスが標準に達していないことがわかります。もちろん、単一のテストでは何も説明できず、参考としてのみ役立ちます。パフォーマンス指標を見てみましょう。
これらの時間については、画像内の赤いボックスをクリックして表示モードを切り替えることができます。対応する時間の説明が添付され、「詳細を見る」をクリックすると詳細なインジケーターの紹介が表示されます。この文書では、各指標は、このレビューが重要な理由、このレビューに合格する方法、このレビューを達成する方法の 3 つの部分に明確に分割されています。 パフォーマンス指標の最適化提案の解釈パフォーマンスの推奨事項は、主に機会(最適化可能な項目)、手動診断項目、承認済みレビュー項目の 3 つのカテゴリに分けられます。例は次のとおりです。 図内の各項目を展開すると、次のような詳細な説明が表示されます。 最適化には 2 つの提案があります。
この項目の内容は、LightHouse が直接最適化できると発見したいくつかのポイントを示しています。それに応じて最適化することができます。 手動診断項目には 6 つの提案があります。
これらの項目は、LightHouse が現在の状況が良いか悪いかを判断することはできませんが、詳細がリスト化されており、各項目の状況を手動で確認することができます。 合格したレビュー項目ここに良い点をリストします。この記事には 16 の例があります。ただし、それらがうまくできているとしても、注意深く見る価値はあります。すべてのエントリと同様に、ここにある各エントリにも showmore があり、クリックしてその背後にある知識と原則を注意深く学ぶことができます。 アクセシビリティアクセシビリティとは、「通常の」ユーザーの範囲外にあり、予想とは異なる方法で Web ページにアクセスしたり操作したりするユーザーのエクスペリエンスを指します。この記事の例では、次の図が示されています。 アクセシビリティ カテゴリでは、スクリーン リーダーやその他の支援技術がページで適切に動作するかどうかをテストします。たとえば、要素に応じて属性を使用するか、タグが標準化された方法で使用されているか、img タグに alt 属性が欠けているかどうか、認識可能な要素名などです。この項目については詳しく説明しません。ただし、監査の推奨事項に従って Web ページを変更することをお勧めします。 その他の項目については、この記事の例のベストプラクティスが高く評価されていますが、例はPWAをサポートしておらず、SEOを考慮する必要がないため、ここでは詳しく説明しません。該当するニーズがある場合は、詳細を確認してください。 要約する最後にまとめると、Chrome Dev Tools を使用してページのパフォーマンスを分析し、次の指標を参考にしています。
これらの分析方法については、この記事で詳しく説明します。真剣に見てもいいですよ〜 これで、Chrome Dev Tools を使用したページパフォーマンス分析 (フロントエンドパフォーマンス最適化) の手順に関するこの記事は終了です。Chrome Dev Tools のページパフォーマンスに関する関連コンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL で誤って削除したテーブル データを回復する方法 (必読)
IPマスカレードとポート転送Firewalldは2種類のネットワークアドレス変換をサポートしています...
目次1. 範囲2. スコープチェーン3. 語彙の範囲5. 閉鎖の適用6. クロージャの欠陥7. 閉会...
序文Tomcat は、無数のチューニング オプションを備えた、広く使用されている Java Web ...
効果画像(境界線の色が薄すぎるので、{} で囲みます): { }参考リンク Pure CSS バブル...
目次1. 元の配列が変更されます1. プッシュ(): 2.ポップ(): 3. シフト(): 4.un...
開発およびデバッグのプロセスでは、新しいコードと古いコードの違いを比較する必要があります。比較には、...
目次ネイティブJS GETリクエストの送信方法投稿リクエストの送信方法パラメータ付きのGETリクエス...
以前、raspbian で実行したときに opencv の一部の依存関係をパッケージ化できず、一部の...
現在、Docker には中国向けの公式ミラーがあります。詳細については、https://www.do...
目次1要素オフセットシリーズ1.1 オフセットの概要1.2 オフセットとスタイルの違い視覚領域クライ...
XHTML CSS を使って Web ページをデザインし始めた頃は、タグの使用経験も少なく、あまり気...
Docker を使用すると、外部からコンテナにアクセスしたり、コンテナを相互接続したりすることで、ネ...
この記事の例では、どこにでも移動できるフローティングボタンを実現するためのVueの具体的なコードを共...
1. インターネットで長時間検索しましたが、判定表が存在するかどうかがわからなかったので、漠然と削除...
注意: docker-compose.yml ファイルを書き込むときは、すべてのコロン (:) とダ...