1. ホーム
  2. performance

[解決済み] Google Chromeのネットワークパネルのタイムラインに表示される時刻の意味とは?

2023-07-12 07:56:37

質問

Google Chrome のネットワーク パネルを使用してパフォーマンスをトラブルシューティングしているとき、しばしば異なる時間が表示され、それが何を意味するのか不思議に思うことがあります。

私がこれらを正しく理解しているかどうか、どなたか検証していただけないでしょうか。

  1. ブロックされる。ブラウザの同一ドメイン複数リクエストによる時間制限(????)
  2. 待機中です。サーバーからの接続待ち(????)
  3. 送信中。サーバーからブラウザへのファイル転送にかかった時間 (???)
  4. 受信。ブラウザがファイルを解析し、デコードするために費やした時間(?)
  5. DNS ルックアップ。ホスト名を解決するために費やされた時間。
  6. 接続中。 ソケット接続の確立に費やされた時間。

さて、長いブロック時間をどのように修正するのでしょうか?

さて、長い待ち時間をどのように修正するのでしょうか?

どのように解決するのでしょうか?

送信は、データ/リクエストをサーバーにアップロードするために費やされる時間です。 これは、ブロックと待機の間に発生します。 たとえば、ASPX ページをポストバックする場合、これはリクエスト (フォームの値とセッション状態を含む) を ASP サーバーにアップロードして戻るのに要した時間を示します。

待ち時間は、リクエストが送信された後、サーバーからの応答を受信するまでの時間です。 基本的に、これはサーバーからの応答を待つために費やされる時間です。

Receivingは、サーバーからの応答をダウンロードするのに費やされる時間です。

ブロック は、UI スレッドがリクエストを開始してから、HTTP GET リクエストがワイヤに到達するまでの時間です。

これらの発生順序は

  1. ブロック化*。
  2. DNS ルックアップ
  3. 接続
  4. 送信 待機中
  5. 受信中

*ブロックとDNS Lookupは入れ替わることがあります。

ネットワークタブには、処理にかかった時間は表示されません。

ブロック時間が長い場合、ブラウザを実行しているマシンの動作が遅くなっています。 マシンをアップグレードする (RAM の増設、プロセッサの高速化など) か、作業負荷を減らす (不要なサービスを停止する、プログラムを閉じるなど) ことで、これを解決することができます。

待ち時間が長い場合、サーバーがリクエストに応答するのに長い時間がかかっていることを示しています。 これは、次のどちらかを意味します。

  • リクエストの処理に時間がかかっている (データベースから大量のデータを取得している場合、大量のデータをソートする必要がある場合、またはスピンアップが必要な HDD でファイルを検出する必要がある場合など)。
  • サーバーがあまりにも多くのリクエストを受信しているため、妥当な時間ですべてのリクエストを処理できない (リクエストの処理に 0.02 秒かかるかもしれませんが、1000 件のリクエストがある場合は顕著な遅延が発生します)。

2 つの問題 (長い待機時間 + 長いブロック) は関連しています。 キャッシュ、新しいサーバーの追加、およびアクティブなページに必要な作業の削減により、サーバーの作業負荷を減らすことができれば、両方の領域で改善が見られるはずです。