İnternette geçirilen sürenin artması ve sitenizin kaliteli siteler arasında yer almanın kıstasları arasında site açılma hızının bulunması gibi sebepler sitenin açılma hızını önemli hale getirdi. Siz de sitenizi hızlandırmanın yollarını arıyorsanız sunucunuzda sıkıştırmayı açmanız gerekir. Web sunucunuz da sunucunuzun konuştuğu tarayıcı da ortak bir sıkıştırma algoritması anladığında iletilen veriler sıkıştırılır. Bu durum verileri küçülterek daha hızlı alınmasını ve sayfanın daha hızlı bir şekilde açılmasını sağlar.
Hızlı açılan sayfaların avantajlarından bazıları şu şekildedir:
- Kullanıcı dostu sayfalar olarak ziyaretçilerin sadakatini sağlar.
- Video içeriklerin donmadan hızlı açılmasını sağlar.
- E Ticaret projelerinde müşterilerin alışverişlerini kolaylaştırır.
- Haber sitelerinde okurları doğru bilgiye hızlıca ulaştırır.
Google tarafından yapılan araştırmaya göre sitenizin yüklenmesi 3 saniyeden uzun sürdüğünde kullanıcıların yüzde 40’ı sitenizi terk eder. 1 saniyelik bir gecikmede ise yüzde 7’lik düşüş yaşanır. Bu durum sıkıştırmanın ve sitenin hızının artırılması için yapılması gerekenlerin önemini ortaya koyar.
Sıkıştırma Nasıl Yapılır?
Tarayıcınız ile sunucunuz algoritmalar aracılığıyla konuşur. Siz tarayıcıya URL eklediğinizde bu konuşma gerçekleşir. Gerçekleşen konuşmalar arasında da sıkıştırma olup olmadığı varsa sunucunun bu sıkıştırmayı açıp açmayacağıdır. Eğer sıkıştırma varsa ve hangi algoritma ile yapıldığını biliyorsa sunucunuz tarayıcıya tüm verileri sıkıştırarak gönderir. Gelişmiş web tarayıcılarındaki algoritmalar söndür, gzip ve brotli ile kodlanır.
Gzip Sıkıştırma Nasıl Olur?
Gzip, Jean-loup Gailly ile Mark Adler’in betasını 1992’de yazdığı Gzip 1993’ün başlarında kullanılmaya başladı. Halen yaygın olarak kullanılan yazılım sıkıştırma algoritmasıdır. Başlangıçta dosyalarınızı sıkıştırmak için tasarlanan Gzip, sonradan web üzerinde de çalışabilmesi için akışlarınızı sıkıştırmaya uyarlandı. İlk tasarlandığında çok amaçlı sıkıştırma kitaplığı olarak planlanan yazılımın tam ismi GNU Zip’tir.
Gzip sayesinde sitenizdeki HTML sayfalarının yanı sıra stil sayfalarıyla komut dosyalarının boyutu azaltılır. Ayrıca Gzip . gz dosyalarının uzantısıdır ve dosyalarınızı sıkıştırmak ve açmak için kullanılır. Verilerin sıkıştırılması için kullanılan DEFLATE algoritması halen en popüler sıkıştırma yöntemleri arasında yer alır. DEFLATE, Gzip sıkıştırmanın temelidir. Gzip’in sıkıştırma seviyeleri 1-9 arasında değişir. 9. seviye en yavaş sıkıştırma düzeyidir. Yüksek kaliteli sıkıştırma sağlar. 1. seviye ise hafif bir sıkıştırma sağlar. Fakat görece daha hızlıdır.
Tüm büyük tarayıcılar Gzip sıkıştırmasını destekler. Rovity dahil olmak üzere çoğu web barındırma sağlayıcısı da Gzip sıkıştırması sunar.
Gzip sıkıştırma kullandığınızda şu avantajlarla karşılaşırsınız:
- Metin tabanlı kaynakların boyutunu %70 civarında sıkıştırır. Bu yönüyle iyi bir sıkıştırma özelliği bulunur.
- Verilerinizi sıkıştırma ve açma hızı yüksektir. Bu özelliğiyle HTTP sunucularınızda ve veri akışlarınızda anında sıkıştırma sağladığı için sitenizde bu algoritmayı kullanmak size büyük avantaj sağlar.
- Belleğiniz sınırlıysa çok az bellek gerektiren bir algoritması bulunduğundan sizin için en uygun sıkıştırma algoritması vazifesi görür. Bu özelliği nedeniyle kullanmayı düşündüğünüz en ekonomik barındırma sağlayıcıları tarafından da desteklenir.
- Açık kaynaklıdır ve ücretsiz olarak da kullanmanıza olanak sağlar.
- Dünyanın her tarafındaki sunucular ve istemciler tarafından da desteklendiği için sitenizi hangi sunucuda barındırırsanız barındırın sorun yaşamazsınız.
Gzip Nasıl Çalışır?
- İnternet tarayıcısı index.html web server adresinden index.html’nin sıkıştırılmış halini ister.
- Sunucu tarafından dosya bulunur.
- Sunucu bulduğu index.html dosyasını sıkıştırarak gönderir.
- Tarayıcı boyutu küçülen dosyayı internet tarayıcı da size gösterir.
Brotli Sıkıştırma Nedir?
Google çalışanları Jyrki Alakuijala ile Zoltan Szabadka, 2013 yılında Brotli’yi webin yazı tipleri olan Wot dosyalarını sıkıştırmanın daha iyi yollarını araştırırken geliştirdi. 2015 yılında da http sıkıştırmasını genel olarak ve kayıpsız olarak sıkıştırılmasını destekleyen algoritma yayınlandı. Açık kaynaklı olan brotli, gzipe göre daha iyi performans gösterir. Yeni nesil tarayıcılar tarafından da desteklenir. Brotlinin avantajları arasında şunlar bulunur:
- Brotli sıkıştırmaları daha küçük olduğu için siteniz daha hızlı açılır.
- Gzip sıkıştırmalarına göre daha hızlıdır.
- Kullanmış olduğunuz chrome, Edge, Safari gibi büyük web tarayıcıları tarafından desteklenir.
- LZ77 genel amaçlı kayıpsız sıkıştırma algoritması içeren Brotli, web sunucuları ile içerikleri dağıtan ağlar tarafından http içeriğini sıkıştırmak için kullanılır. Bu sayede imternet siteleri hızlı bir şekilde açılır. Bu sıkıştırma programı günümüzde Gzip’in alternatifi olarak kullanılır.
Araştırma Brotli’nin İE (Edge ile değiştirilmiştir) Opera Mini, Baidu dışında yer alan tüm büyük tarayıcılar tarafından desteklendiğini gösterir.
Brotli Nasıl Çalışır?
Küçük metin belgeleri için optimize edilen Brotli şu şekilde çalışır:
- Siz web sitesine internet tarayıcısı aracılığıyla erişim isteği gönderirsiniz.
- Gönderilen erişim isteği internet tarayıcısı tarafından sunucuya ne tür bir içeriği açacağını Accep – Encoding üst bilgisi kullanarak gönderir.
- Sunucu seçilen sunucu algoritmalarına bağlı olarak hangi sıkıştırılmış içeriğin tercih edileceğini belirler.
- Sunucu belirlediği Content – Encoding üst bilgisini tarayıcıya gönderir.
- İnternet tarayıcısı gelen verileri açarak sayfada gösterir.
Brotli ve Gzip Arasındaki Fark Nedir?
İnternet projelerinde sayfa boyutlarının küçülmesi sıkıştırma algoritması kullanıldığını biliyorsun. Brotli mi yoksa Gzip mi kullanacaksın? İkisi karşılaştırıldığında sen de hangi algoritmanın siten için daha iyi olduğuna karar vereceksin.
Karşılaştırmaya geçmeden önce sıkıştırma oranı ve hızı hakkında bilgi vermek gerekirse;
- Sıkıştırma Oranı: Dosya sıkıştırıldığında dosyanın orjinale göre küçülen yüzdesidir.
- Sıkıştırma Hızı: Dosyayı sıkıştırmak ya da açmak için geçen süredir.
Sıkıştırma hızı dinamik internet projelerinde hayati öneme sahiptir. Bu nedenle sıkıştırmanın anında yapılması gerekir. Web sitesinin performansı, kalite puanı ve ziyaretçilerin sadakati buna bağlıdır.
Gzip algoritması başlangıçta dosyalarınızı sıkıştırmak için tasarlandı daha sonra akışlarınızı sıkıştırmaya uyarlandı. Brotli ise akışları sıkıştırmak için yazılan daha sonra da web içeriğini sıkıştırarak daha çok hızlanmasını sağlayan iyileştirmeler yapıldı. Gzip eski bir sıkıştırma aracı olarak varlığını sürdürse de Brotli alternatif bir sıkıştırma algoritması olarak gün geçtikçe popüler hale gelen bir algoritmadır.
Brotli algoritması sıkıştırması diğer sıkıştırma yazılımlarına göre daha küçük olduğundan sitenizi hızlı bir şekilde açar. CertSimple tarafından gerçekleştirilen araştırmada Brotli’nin performansının CSS için yüzde 17, JavaScript için yüzde 14, HTML için de yüzde 21 daha küçük olduğu belirlenmiş. Bu araştırma Brotli’nin Gzip’ten yavaş olmadığını ortaya çıkarır ve kullandığınız yeni nesil web tarayıcıların çoğu tarafından da desteklenir.