Chrome'da aşağıdaki ağ giriş bilgilerim var:
İçinde bir şey anlamıyorum: dolu gri çubuklar ve şeffaf gri çubuklar arasındaki fark nedir?
Chrome'da aşağıdaki ağ giriş bilgilerim var:
İçinde bir şey anlamıyorum: dolu gri çubuklar ve şeffaf gri çubuklar arasındaki fark nedir?
Yanıtlar:
Google, Ağ performansını değerlendirme bölümünde bu alanların dökümünü verir , DevTools belgelerinin bölümünde .
Sofra / Engelleme
İsteğin gönderilmeden önce beklediği süre. Bu süre, vekil görüşmesinde harcanan herhangi bir zamanı kapsar. Ayrıca, bu süre, tarayıcının önceden kurulmuş bir bağlantının yeniden kullanılabilir olmasını beklediğini ve Chrome'un başlangıç kuralı başına maksimum altı TCP bağlantısına uyduğunu içerecektir .
(Unutursanız, Chrome'un fareyle üzerine gelme ipucunda ve "Zamanlama" panelinin altında bir "Açıklama" bağlantısı vardır.)
Temel olarak, bunu görmenizin başlıca nedeni, Chrome'un sunucu başına bir seferde yalnızca 6 dosya indirmesi ve bir bağlantı yuvası kullanılabilir hale gelene kadar diğer isteklerin durdurulmasıdır.
Bu mutlaka ihtiyaçları tespit olduğunu bir şey, ama tutarak, birden fazla alan adları ve / veya sunucular arasında dosyaları dağıtmak olacaktır durmuş durumunu önlemek için tek yol değildir CORS'yi ihtiyaçlarınız için geçerli, ancak HTTP2 muhtemelen daha iyi bir seçenek olup olmadığını akılda ileriye gidiyor. Kaynak birleştirme (JS ve CSS birleşimi gibi), durdurulan bağlantıların miktarını azaltmaya yardımcı olabilir.
file:///C:/...
DevTools: [ağ] önceki istekte bulunan boş çubukları açıklıyor
Daha fazla araştırdı ve Stalled ve Queuing serilerimiz arasında önemli bir fark olmadığını belirlediler. Her ikisi de netstack veya renderer'dan ziyade diğer zaman damgalarının deltalarından hesaplanır.
Şu anda bir soketin kullanılabilir olmasını bekliyorsak:
- bazı vekalet müzakereleri gerçekleşirse bunun durduğunu söyleriz
- proxy / ssl çalışması gerekmiyorsa kuyruğa alma olarak adlandırırız.
Bu resmi Chome-devtools sitesinden geliyor ve yardımcı oluyor. İşte alıntı:
- Queuing bir istek o belirtti sıraya ise:
- Kritik kaynaklardan (komut dosyaları / stiller gibi) daha düşük önceliğe sahip olduğu için istek oluşturma motoru tarafından ertelendi. Bu genellikle görüntülerde olur.
- Boşta kalmaya hazır olan kullanılabilir olmayan bir TCP soketini beklemek için istek beklemeye alındı.
- Tarayıcı HTTP 1'de kaynak başına yalnızca altı TCP bağlantısına izin verdiği için istek beklemeye alındı. Disk önbellek girişleri yapmak için harcanan zaman (genellikle çok hızlıdır).
- Durdu / Engelleme İsteğin gönderilmeden önce beklediği süre. Queuing için açıklanan nedenlerden herhangi birini bekliyor olabilir. Buna ek olarak, bu süre vekil görüşmesinde harcanan herhangi bir zamanı kapsar.
Benim durumum, sayfanın açıkken farklı parametrelerle birden fazla istek göndermesi. Yani çoğu "durdu". Aşağıdaki istekleri hemen gönderilir "durdu". Gereksiz taleplerden kaçınmak daha iyi olurdu (tembel olmak ...).
Birçok kişi buraya yavaş web sitelerinde hata ayıklama geldiğinden ben google açıklamaları hiçbiri çözmeye yardımcı olan benim durumum hakkında sizi bilgilendirmek istiyorum. Benim büyük durdu zamanları (bazen 1 dakika), bağlantıları işlemek için çok az çalışan iş parçacığı olan Windows üzerinde çalışan Apache neden oldu, bu nedenle sıraya alındı.
Apache günlüğünüzde aşağıdaki not varsa bu durum sizin için geçerli olabilir:
Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
Bu sorun Apache httpd.conf dosyasında giderilmiştir. Tavsiye: conf / extra / httpd-mpm.conf dosyasını dahil et
Ve httpd-mpm.conf dosyasını düzenleyin
<IfModule mpm_winnt_module>
ThreadLimit 2000
ThreadsPerChild 2000
MaxConnectionsPerChild 0
</IfModule>
2000 iş parçacığına veya daha fazlasına ihtiyacınız olmayabileceğini unutmayın. 2000 davam için iyi oldu.