Gzip performansı avantajları için önerilen minimum nesne boyutu nedir?


31

Sayfa hızı görüntüleme sürelerini iyileştirmeye çalışıyorum ve yöntemlerden biri içeriği web sunucusundan almak.

Google şunları önerir :

Gzipping işleminin yalnızca daha büyük kaynaklar için faydalı olduğunu unutmayın. Sıkıştırma ve açma işleminin ek yükü ve gecikme süresi nedeniyle, yalnızca belirli bir boyut eşiğinin üzerindeki dosyaları gziplemelisiniz; 150 ile 1000 bayt arasında minimum bir aralık tavsiye ediyoruz. 150 baytın altındaki dosyaları Gzipping aslında onları daha büyük yapabilir.

İçeriğimizi bir proxy ve CDN için ağlarını kullanarak Akamai aracılığıyla sunuyoruz . Bana ne dediler:

Minimum boyutun ne olduğu ile ilgili sorunuzun takibi Akamai, istenen nesneyi son kullanıcıya gönderirken sıkıştıracaktır: Minimum boyut 860 bayttır.

Cevabım:

Akamai'nin minimum boyutunun 860 bayt olmasının nedenleri ne olabilir? Ve neden, örneğin, bu Akamai'nin Facebook için sunduğu dosyalar için geçerli değil mi? ( aşağıya bakın ) Google, daha agresif bir şekilde girmenizi önerir. Ve bu, en sık yapılan isabetlerin, şu ana kadar <860 bayt olan AJAX çağrıları olduğu sitemizde uygun görünüyor.Facebook başlık ekran görüntüsü Akamai'nin ifadesine itiraz

Akamai'nin cevabı:

860 baytın nedenleri sıkıştırma için minimum boyutun iki katıdır: (1) Bir nesneyi 860 baytın altına sıkıştırmanın ek yükü, performans kazancından ağır basar. (2) 860 bayt altındaki nesneler yine de tek bir paket üzerinden iletilebilir, bu nedenle bunları sıkıştırmak için zorunlu bir neden yoktur.

Bu yüzden bazı gerçekleri kontrol etmek için buradayım. Paket boyutundan dolayı 860 bayt sınırı bu mantığın sonu mu? Neden yüksek trafik siteleri bunu yalnızca 150 bant bayt sınırına çekiyor ... sadece bant genişliği maliyetlerinden tasarruf etmek için (CDN'lerin ücretlerini menşeinden boşaltılmış olan bant genişliği oranına dayandırdığı için) ya da böyle bir performans kazancı var mı?


7/9/12 Güncelleme: Steve Souders’a , bir paketten daha küçük olan gzipping yanıtlarında performans artışı olup olmadığını ve gzip performansının yararları için önerilen minimum nesne boyutunun ne olduğunu sordum ve bu onun cevabı:

Epostan için teşekkürler. Boyut 1-5K arasında bir yerde. Apache'nin bir temeli var ama ne olduğunu unuttum - bu iyi bir rehber olurdu.

Sıkıştırma işlemimizi bir F5 cihazında yapıyoruz, bu nedenle ~ 350 bayta düşüreceğiz, çünkü bununla 1K arasında makul miktarda AJAX çağrısı var. Web sitemizdeki 350 bayttan az olan AJAX aramaları 70 bayt civarındadır ... Google’ın önerilerinden daha az ... bu yüzden gerçekten geri dönüyor gibi görünüyor: web sitenizi tanıyın ve kodunuza göre ayarlayın .

F5 güncellemesi bir süre Üretimde çalıştıktan sonra bu yazıya geri döneceğim. Çok az performans avantajı olacağını düşünüyorum, ancak daha az hizmet verdikleri için Akamai maliyetlerimizi biraz düşüreceğiz.


@Steve, Nisan düzenlemesiyle ilgili olarak, bu alandaki cevabın uzmanının her iki soruyu da cevaplamadığı için, hissi netleştirmek için elek ekledim . Bay Sounders'tan haber aldığım için çok memnun oldum ama o da kesin bir cevap bilmiyordu.
utt73

Gelince "Bir süre Üretiminde F5 güncelleme çalıştırıldıktan sonra bu yazı geri almak artık bu özel web uygulaması ile çalışmalarını yok gerçi biz de ortalama sayfa yükleme () olayı ve Saati alma hedefimize başarılı oldular," İnteraktif (TTI) 2 saniyenin altında ve yük taşıma çabasındaki bu azalma bunun küçük bir parçasıydı. Http trafik araması sayısını azaltma, tarayıcı önbelleğini genişletme, kodu optimize etme ve diğer web performansı en iyi uygulamalarının tümü katkıda bulundu.
utt73

Yanıtlar:


3

Bant genişliği maliyetlerinizin sağladığı avantajlardan bahsediyorsunuz, ancak aynı zamanda bir tarayıcıdaki sayfa yükleme performansını da karşılaştırıyorsunuz. Onlar iki farklı şey.

İsteği aldığınızda, bir şey gerçekten sıkıştırmayı yapmak zorundadır (sizin durumunuzda, F5) ve müşteri (veya teknik olarak vekiller) dekompresyonla başa çıkmak zorundadır. Bu, donanımın her iki ucunda da ne kadar yetenekli olduğuna bağlı olarak isteğinize daha fazla gecikme ekleyebilir.

"Gzip için minimum boyut", web tarayıcısı deneyimi açısından faydalı olmayan küçük verilerin sıkıştırılması / açılması için gereken süreye dayanır. Yalnızca bant genişliği tasarruflarından bahsediyorsanız, devam edin ve minimum seviyenizi istediğiniz kadar düşürün, ancak son kullanıcılarınıza herhangi bir performans kazancı sağlamayacağınızı bilerek yapın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.