83

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

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

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

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

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

4

3 に答える 3

93

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

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

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

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

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

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

*ブロッキングとDNSルックアップが交換される可能性があります。

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

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

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

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

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

于 2012-10-04T18:13:59.040 に答える
25

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

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

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