Что означает время в хронологии Google Chrome на панели сети?

Часто при устранении неполадок производительности с помощью панели Google Chrome я вижу разные времена и часто задаюсь вопросом, что они означают.

Может ли кто-нибудь подтвердить, что я правильно их понимаю:

  • Блокировка: время, заблокированное браузером, несколько запросов для одного и того же домена (???)
  • Ожидание: Ожидание соединения с сервером (???)
  • Отправка: время, потраченное на передачу файла с сервера в браузер (???)
  • Получение: время, затраченное браузером на анализ и декодирование файла (???)
  • Поиск DNS: время, затрачиваемое на решение имени хоста.
  • Подключение: время, затрачиваемое на установление соединения сокета.

Теперь, как кто-то исправит длительные блокировки?

Теперь, как кто-то исправит длительное время ожидания?

Ответ 1

Отправка - это время, затраченное на загрузку данных/запросов на сервер. Это происходит между блокировкой и ожиданием. Например, если я отправлю назад страницу ASPX, это укажет количество времени, затраченного на загрузку запроса (включая значения форм и состояния сеанса) обратно на сервер ASP.

Ожидание - это время после отправки запроса, но до получения ответа от сервера. В основном это время, потраченное на ожидание ответа с сервера.

Получение - это время, затраченное на загрузку ответа с сервера.

Блокировка - это время между потоком пользовательского интерфейса, начинающимся с запроса, и HTTP GET-запрос, поступающий на провод.

Порядок, в котором они встречаются, равен:

  • Блокировка *
  • Поиск DNS
  • Подключение
  • Отправка
  • Ожидание
  • Прием

* Блокировка и поиск DNS могут быть заменены.

Вкладка "Сеть" не указывает время, затрачиваемое на обработку.

Если у вас длительное время блокировки, машина, работающая в браузере, работает медленно. Вы можете исправить это, обновив машину (больше оперативной памяти, более быстрый процессор и т.д.) Или уменьшив рабочую нагрузку (отключите службы, которые вам не нужны, программы закрытия и т.д.).

Длительное время ожидания указывает, что на ваш сервер требуется много времени для ответа на запросы. Это означает:

  • Запросу требуется много времени для обработки (например, если вы извлекаете большой объем данных из базы данных, необходимо сортировать большие объемы данных или файл должен быть найден на жестком диске, который необходимо развернуть).
  • На ваш сервер поступает слишком много запросов для обработки всех запросов за разумное время (для обработки запроса может потребоваться 0,2 секунды, но когда у вас 1000 запросов, будет заметная задержка).

Два вопроса (длительное ожидание + длинная блокировка) связаны между собой. Если вы можете уменьшить нагрузку на сервер путем кеширования, добавления нового сервера и сокращения работы, необходимой для активных страниц, тогда вы должны увидеть улучшения в обеих областях.

Ответ 2

Вы можете прочитать подробное официальное объяснение от команды google здесь. Это действительно полезный ресурс, и ваша информация находится в разделе Временная шкала.

Время ресурсной сети показывает ту же информацию, что и в панели ресурсов в виде временной шкалы. Ответ на ваш вопрос:

  • Поиск DNS: время, затрачиваемое на поиск DNS. (вам нужно узнать IP-адрес сайта .com, и это требует времени).
  • Блокировка: время, когда запрос, потраченный на ожидание уже установленного подключения, станет доступным для повторного использования. Как было сказано в другом ответе, это не зависит от вашего сервера - это проблема с клиентом.
  • Подключение. Время, необходимое для установления соединения, включая рукопожатия/попытки TCP, поиск DNS и время подключения к прокси или согласование уровня защищенного сокета (SSL). Зависит от перегруженности сети.
  • Отправка - время, потраченное на отправку запроса. Зависит от размера отправляемых данных (что в основном мало, потому что ваш запрос почти всегда несколько байтов, за исключением случаев, когда вы отправляете большое изображение или огромное количество текста), перегрузка сети, близость клиента к серверу.
  • Ожидание. Время ожидания первоначального ответа. Это в основном время вашего сервера для обработки и ответа на ваш ответ. Так быстро, если ваш сервер вычисляет вещи, извлекает записи из базы данных и т.д.
  • Получение - время, затрачиваемое на получение данных ответа. Что-то похожее на отправку, но теперь вы получаете свои данные с сервера (размер ответа в основном больше, чем запрос). Это также зависит от размера, качества соединения и т.д.

Ответ 3

Блокировка: время, когда запрос, потраченный на ожидание уже установленного подключения, станет доступным для повторного использования. Как было сказано в другой ответ не зависит от вашего сервера - это клиентский проблема.

Я не согласен с вышесказанным. Все остальное - одно и то же [моя рабочая нагрузка] - мой браузер показывает очень мало времени "блокировки" для одного веб-сайта и длительное время блокировки для другого сайта.

Таким образом, если ожидание одного из шести потоков + согласование прокси-сервера ** велико, это в основном из-за каскадного эффекта медленности сервера или плохой дизайн страницы [слишком много отправляется по проводам, слишком много раз ].

** - независимо от того, что означает "Proxy Negotiation", никто не объясняет это очень хорошо, особенно если локальный/CDN-прокси фактически не задействован