コンテンツに移動
Silktideヘルプ

JavaScriptの実行時間

Silktideは、ページの読み込み中にブラウザーがスクリプトの実行に費やす時間を測定します。スクリプト処理が重いとページが応答しなくなるため、読み込みが完了したように見えても、数秒間タップやクリックを受け付けないことがあります。

重要な理由

スクリプトのダウンロードは、最初に発生するコストにすぎません。その後、ブラウザーはスクリプトを解析して実行する必要があり、これらの処理はすべて、スクロールや入力、タップを処理するのと同じスレッドで行われます。スクリプトの実行中、ページは反応しなくなります。ボタンは応答せず、ページが読み込みを終えたように見えても、壊れているように感じられます。

ダウンロード時間とは異なり、このコストは訪問者のプロセッサー性能に応じて変わります。開発者のマシンで0.5秒で実行できるスクリプトが、低価格帯のスマートフォンでは数秒かかることがあります。最も安価なデバイスを使う訪問者ほど、長く待つことになります。

修正方法

  1. の量を減らします。使われていないコードを削除するのが最も直接的な改善策です。未使用のJavaScriptをご覧ください。
  2. 大きなバンドルを分割し、画面下部の機能や操作に応じて読み込む機能のコードは必要になったときだけ読み込みます。これにより、初回読み込みでは最初の画面に必要な処理だけが実行されます。
  3. サードパーティ製スクリプトを監査します。これらは実行時間の大部分を占めることがよくあります。サードパーティ製コードをご覧ください。コストに見合う価値のないものは削除します。
  4. 本当に負荷の高い計算処理をウェブワーカーに移します。ウェブワーカーは別のスレッドで実行されるため、ページの応答性を維持できます。

Silktideによるテスト方法

  1. 速度テスト用に設定されたデバイスの種類、接続速度、テスト場所を使用して、実際のブラウザーでページを読み込みます。
  2. 読み込み中に各スクリプトが消費した処理時間を測定し、コードの実行(スクリプト評価)と、実行の準備(解析)に分けます。
  3. 意味のある時間を消費したスクリプトを、ファイルごとの内訳とともに報告します。合計実行時間が短い場合は、個別のスクリプトを一覧表示しません。
  4. 合計時間に基づいてページを評価します。2秒未満は良好で、約3.5秒以上は低評価となります。

トラブルシューティング

サードパーティ製スクリプトが上位に表示される

アナリティクス、タグマネージャー、広告、チャットウィジェットは、サイト独自のコードよりも多くの実行時間を消費することがよくあります。これらの内部処理を最適化することはできませんが、読み込みを遅らせたり、より軽量な代替手段に置き換えたり、誰も使っていないものを削除したりできます。

自分のマシンではページが速く感じられる

実行時間はプロセッサー性能によって異なります。開発者が使うマシンは、ほとんどの訪問者が使うミッドレンジのスマートフォンより通常数倍高速です。そのため、自分には気にならない処理時間でも、訪問者にとっては数秒かかることがあります。測定値は、使用中のハードウェアではなく、管理されたテスト環境から得られたものです。

詳細情報

最終更新

このページは役に立ちましたか?