Zrozumienie stanu "zablokowanego" dziennika sieci Chrome

Mam następujący log sieciowy w chrome:

dziennik sieci

Nie rozumiem jednej rzeczy: jaka jest różnica między wypełnionymi szarymi paskami a przezroczystymi szarymi paskami.

Author: Alexander O'Mara, 2015-03-23

5 answers

Google podaje podział tych pól w sekcji Ocena wydajności sieci ich dokumentacji DevTools.

Fragment z Resource network timing :

Blokowanie/Blokowanie

Czas oczekiwania na wysłanie żądania. Czas ten obejmuje każdy czas spędzony na negocjacjach proxy. Dodatkowo ten czas będzie obejmował czas, gdy przeglądarka czeka na już ustanowione połączenie, aby stało się dostępne do ponownego użycia, przestrzeganie maksymalnie sześciu połączeń TCP na regułę pochodzenia.

(jeśli zapomnisz, Chrome ma link "wyjaśnienie" w podpowiedzi najazdu i pod panelem "czas".)

Zasadniczo głównym powodem, dla którego to zobaczysz, jest to, że Chrome będzie pobierał tylko 6 plików na serwer na raz, a inne żądania będą wstrzymywane, dopóki gniazdo połączenia nie stanie się dostępne.

Niekoniecznie jest to coś, co wymaga naprawy, ale jednym ze sposobów na uniknięcie stanu wstrzymanego byłoby aby rozpowszechniać pliki między wieloma nazwami domen i / lub serwerami, pamiętając CORS , jeśli dotyczy to Twoich potrzeb, jednak HTTP2 jest prawdopodobnie lepszą opcją w przyszłości. Łączenie zasobów (jak JS i łączenie CSS) może również pomóc w zmniejszeniu liczby wstrzymanych połączeń.

 216
Author: Alexander O'Mara,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-20 09:12:55

DevTools: [network] explain empty bars preceeding request

Zbadaliśmy dalej i stwierdziliśmy, że nie ma znaczącej różnicy między naszymi przedziałami wstrzymania i kolejkowania. Obie są obliczane na podstawie delty innych znaczników czasu, a nie dostarczane z netstack lub renderer.


Obecnie, jeśli czekamy na udostępnienie gniazda:

  • nazwiemy to wstrzymaniem, jeśli dojdzie do negocjacji z pełnomocnikiem
  • nazwiemy to kolejkowaniem, jeśli nie było wymagane działanie proxy / ssl.
 14
Author: Naga Kiran,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-24 12:16:52

Https://developers.google.com/web/tools/chrome-devtools/network-performance/understanding-resource-timing

To pochodzi z oficjalnej strony Chome-devtools i pomaga. Tu cytuję:

  • Kolejka Jeśli żądanie jest w kolejce, oznacza to, że:
    • żądanie zostało odroczone przez silnik renderujący, ponieważ jest uważane za niższy priorytet niż krytyczne zasoby (takie jak skrypty/style). Często dzieje się tak z obrazami.
    • żądanie zostało wstrzymane, aby poczekać na niedostępne Gniazdo TCP, które zaraz się zwolni.
    • żądanie zostało wstrzymane, ponieważ przeglądarka zezwala tylko na sześć połączeń TCP na pochodzenie na HTTP 1. Czas spędzony na tworzeniu wpisów pamięci podręcznej dysku (zazwyczaj bardzo szybko.)
  • Blokowanie / Blokowanie Czas oczekiwania na wysłanie żądania. Może czekać na dowolny z opisanych powodów kolejkowania. Dodatkowo czas ten obejmuje wszelkie czas spędzony w negocjacjach proxy.
 7
Author: briefy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-20 07:50:24

Ponieważ wiele osób przyjeżdża tutaj debugując swoją powolną stronę internetową, chciałbym poinformować Cię o mojej sprawie, której żadne z wyjaśnień google nie pomogło rozwiązać. Moje ogromne przerwy (czasem 1min) były spowodowane tym, że Apache działający w systemie Windows miał zbyt mało wątków roboczych, aby obsłużyć połączenia, dlatego były w kolejce.

Może to dotyczyć Ciebie, jeśli w logu apache masz następującą notatkę:

Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting

Ten problem został rozwiązany w Apache httpd.conf. Uncomment : Include conf / extra / httpd-mpm.conf

I edytować httpd-mpm.conf

<IfModule mpm_winnt_module>
   ThreadLimit              2000
   ThreadsPerChild          2000
   MaxConnectionsPerChild   0
</IfModule>

Zauważ, że możesz nie potrzebować 2000 wątków, lub możesz potrzebować więcej. 2000 było OK dla mojej sprawy.

 2
Author: Renno K,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-02-26 09:51:11

Mój przypadek polega na tym, że strona wysyła wiele żądań o różnych parametrach, gdy była otwarta. Więc większość jest "zablokowana". Po wysłaniu żądań natychmiast zostaje "zablokowany". Unikanie niepotrzebnych próśb byłoby lepsze (być leniwym...).

 1
Author: Kevin .NET,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-20 18:49:12