ネットワークパネルのGoogleChromeのタイムラインでの時間はどういう意味ですか?


83

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

誰かが私がこれらを正しく理解していることを検証できますか?

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

では、誰かが長いブロッキング時間をどのように修正するでしょうか?

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


回答:


92

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

待機とは、要求が送信されてから、サーバーからの応答が受信されるまでの時間です。基本的に、これはサーバーからの応答を待つために費やされる時間です。

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

ブロッキングとは、UIスレッドがリクエストを開始してからHTTPGETリクエストがネットワークに到達するまでの時間です。

これらが発生する順序は次のとおりです。

  1. ブロッキング*
  2. DNSルックアップ
  3. 接続する
  4. 送信
  5. 待っている
  6. 受信

*ブロッキングとDNSルックアップが入れ替わる場合があります。

[ネットワーク]タブには、処理に費やされた時間が表示されません。

ブロッキング時間が長い場合は、ブラウザを実行しているマシンの実行速度が遅くなります。これは、マシンをアップグレードする(RAMを増やす、プロセッサを高速化するなど)か、ワークロードを減らす(不要なサービスをオフにする、プログラムを閉じるなど)ことで修正できます。

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

  • リクエストの処理には長い時間がかかります(データベースから大量のデータをプルする場合、大量のデータを並べ替える必要がある場合、またはスピンアップする必要があるHDDでファイルを見つける必要がある場合など)。
  • サーバーが受信するリクエストが多すぎて、妥当な時間内にすべてのリクエストを処理できません(リクエストの処理には0.02秒かかる場合がありますが、リクエストが1000ある場合は、顕著な遅延が発生します)。

2つの問題(長い待機+長いブロッキング)は関連しています。キャッシュ、新しいサーバーの追加、アクティブページに必要な作業の削減によってサーバーのワークロードを削減できる場合は、両方の領域で改善が見られるはずです。


最後の段落では、長い間待つ+長い間受け取るという意味ではありませんでしたか?
バレンティン

@Valentin Receivingは、インターネット接続とサーバーになります。長いブロッキングは、PCに問題があることを意味します。
2014年

24

あなたはここでグーグルチームからの詳細な公式の説明を読むことができます。これは非常に役立つリソースであり、情報はタイムラインビューセクションに表示されます。

リソースネットワークのタイミングは、タイムラインビューのリソースバーと同じ情報を表示します。あなたの質問に答える:

  • DNSルックアップDNSルックアップの実行に費やされた時間。(site.comのIPアドレスを見つける必要があり、これには時間がかかります)
  • ブロッキング:すでに確立されている接続が再利用できるようになるのを待つためにリクエストが費やした時間。別の回答で述べたように、それはサーバーに依存しません-これはクライアントの問題です。
  • 接続:TCPハンドシェイク/再試行、DNSルックアップ、プロキシへの接続またはSSL(Secure-Socket Layer)のネゴシエーションなど、接続の確立にかかった時間。ネットワークの混雑に依存します。
  • 送信-リクエストの送信に費やされた時間。送信されるデータのサイズ(大きな画像や大量のテキストを送信する場合を除いて、リクエストはほとんどの場合数バイトであるため、ほとんどの場合小さい)、ネットワークの輻輳、クライアントからサーバーへの近接性によって異なります。
  • 待機中-最初の応答を待機するために費やされた時間。これは主に、サーバーが応答を処理して応答する時間です。これは、サーバーが計算したり、データベースからレコードをフェッチしたりする場合の速度です。
  • 受信-応答データの受信に費やされた時間。送信に似ていますが、サーバーからデータを取得しています(応答サイズはほとんどの場合要求よりも大きくなります)。したがって、サイズや接続品質などにも依存します。


1

ブロッキング:すでに確立されている接続が再利用できるようになるのを待つためにリクエストが費やした時間。別の回答で述べたように、それはサーバーに依存しません-これはクライアントの問題です。

私は上記の声明に同意しません。他のすべてが同じ[私のマシンワークロード]-私のブラウザは、あるWebサイトの「ブロック」時間が非常に短く、他のWebサイトのブロック時間が長いことを示しています。

したがって、6つのスレッドの1つとプロキシネゴシエーション**の待機時間が長い場合は、主にサーバーの速度低下のカスケード効果またはページのデザインの悪さ[ネットワークを介して送信される回数が多すぎる]が原因です。

**-「プロキシネゴシエーション」が意味するものは何でも!、特にローカル/ CDNプロキシが実際に関与していない場合、誰もこれをうまく説明しません

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.