Sitenizi Hızlandırmak için Brotli ve Gzip Arasındaki Fark Nedir?

Web Design Development Style Ideas Website Concept

İ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.

Sitenin hızını arttırma yöntemleriyle ilgili önerilerin bulunduğu yazımızı buradan inceleyebilirsiniz.

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.

Gzip hakkında daha detaylı bilgi almak istiyorsanız buradaki yazımıza göz atabilirsiniz.

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 hakkında detaylı bilgi içeren blog yazımıza buradan ulaşabilirsiniz.

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.

Akamai tarafından hangi sıkıştırmanın daha iyi olduğunu belirlemek için test yapıldı. Yapılan testte ilk 1000 url listelendi. HTML, CSS ve JavaScript dosyaları hem Gzip hem Brotli yöntemiyle sıkıştırıldı. Sonuçta şu verilere ulaşıldı:

  • HTML için;

Medyan Gzip Tasarrufu: %78

Medyan Brotli Tasarrufu: % 82

  • CSS için;

Medyan Gzip Tasarrufu: % 79

Medyan Brotli Tasarrufu: % 82

  • JavaScript için;

Medyan Gzip Tasarrufu: % 63

Medyan Brotli Tasarrufu: % 68

Akamai, hazırladığı raporda bazı seviyelerde Gzip’in daha hızlı ve etkili olduğunu, Brotli’nin ise daha verimli ve daha az yer kapladığını açıklar. Yapılan açıklamada Brotli ayarlarının biraz değiştirildiğinde sıkıştırma hızının Gzip hızını geçebileceği ve önemli bir sıkıştırma sağlayacağı bilgisine de yer verilir.

Brotli ve Gzip arasındaki fark; üstün sıkıştırma oranından dolayı Brotli, statik verilerin sıkıştırılmasında daha iyi sonuç verir. Gzip ise üstün sıkıştırma hızına sahiptir. Dinamik verilerin sıkıştırılmasında daha iyi sonuç vermektedir. Brotli ayarları üzerinde çalıştığınızda web sunucusu performansınızın artmasını sağlarsınız. Bu da Gzip sıkıştırmasından daha iyi sonuç alacağınız anlamına gelir.

Web Sitesinde Sıkıştırmayı Etkinleştirme

Web sitenizde sıkıştırma işlemini gerçekleştirmek isterseniz sıkıştırma konusunda detaylı bilgi edinmelisiniz. Sıkıştırmanın mantığını tam olarak anladığınızda sıkıştırma etkinleştirmesi yapmalısınız. Sıkıştırmayı etkinleştirmek için Natro’nun deneyimli ekibi ile iletişime geçerek bu işlemi sizin yerinize yaptırabilirsiniz.

Brotli Sıkıştırmanın Etkinleştirilmesi

Apache Kullanarak Etkinleştirme

Apache web sunucusu kullanıyorsanız Brotli sıkıştırması için 2 adımı gerçekleştirmelisiniz:

  • Varsayılan olarak dahil edilmiş olan fakat henüz etkinleştirilmesi gerçekleştirilmeyen Apache Brotili modülünü etkinleştirin.

$ sudo a2enmod brotli 

  • Bu işlemi gerçekleştirdikten sonra web host yapılandırma dosyasını düzenleyerek sunucuya sıkıştırmayı neye uygulamak istediğinizi belirtin.

<IfModule mod_brotli.c>

            AddOutputFilterByType BROTLI_COMPRESS metin/html metin/düz metin/xml metin/css metin/javascript uygulaması/javascript

</IfModule>

Nginx Kullanarak Etkinleştirme

Nginx web sunucusu kullanıyorsanız Brotli sıkıştırmasını etkinleştirmek için nginx.conf dosyasını bulmanız gerekir. Bu dosyayı bulduktan sonra;

“load_module modülleri/ngx_http_brotli_filter_module.so;

load_module modülleri/ngx_http_brotli_static_module.so;”

satırlarını eklemelisiniz.

Sunucu Yöneticisi Değilseniz Nasıl Etkinleştirirsiniz?

Sunucu yöneticiyseniz, yukarıdaki yöntemlerden birini seçebilirsiniz. Sunucu yöneticisi değilseniz de sıkıştırma işlemini etkinleştirebilirsiniz. Bunun için SiteGround gibi üst düzey ana bilgisayarı seçmeniz yeterli olur. SiteGround avantajları arasında şunlar bulunur:

  • Web sitenizi hızlı hale getirir.
  • Bant genişliğinizi korur.

Gzip Sıkıştırmanın Etkinleştirilmesi

Apache Kullanarak Etkinleştirme

  •  Apache için sunucu ayarlarınızdan mod_deflate modülünü aktifleştirin. Bu sayede sitenizi daha hızlı açarak hem ziyaretçilerinizin sadakatine destek sağlayacak hem arama motorlarında ön sıralarda yer alacaksınız.
  • Sunucunuzda Gzip sıkıştırmanın aktif olup olmadığını tespit edin. Bunun için PHP dosyası oluşturun ve aşağıdaki kodu kopyalayın.

<?php phpinfo(); ?>

Dosyanın adını phpinfo.php olarak kaydedin.

  • Sunucunuza atıp çalıştırın. Açılan sayfada gzip compression kısmında enabled yazıyorsa mod_deflate modülünü aktif disapled yazıyorsa pasiftir.

Gzip sıkıştırmanızı aktif etmek için aşağıdaki adımları takip edin.

  •  /etc/httpd/conf/httpd.conf yolunu izleyin sonra şu kodu ekleyin.

LoadModule deflate_module modules/mod_deflate.so

  • SSH bağlantısını gerçekleştirin. Ardından aşağıdaki komutu uygulayın.

# /etc/init.d/httpd restart

veya

# service httpd restart

  • Gzip algoritmasını aktif hale getirdiniz. Sıra geldi bunu sitenizde kullanmaya. Bunun için .htaccess şu kodları ekleyin:

<ifModule mod_gzip.c>

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file .(html?|txt|css|js|php|pl)$

mod_gzip_item_include handler ^cgi-script$

mod_gzip_item_include mime ^text/.*

mod_gzip_item_include mime ^application/x-javascript.*

mod_gzip_item_exclude mime ^image/.*

mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

</ifModule>

Nginx Kullanarak Etkinleştirme

  • Plesk Panelde bulunan Etki Alanları > site.com > Apache ve nginx Ayarları’nı seçin.
  • Ek nginx yönergeleri alanına aşağıda bulunan yönergeleri ekleyin:

gzip on;

gzip_disable “MSIE [1-6]\\.(?!.*SV1)”;

gzip_proxied any;

gzip_comp_level 5;

gzip_types text/plain text/css application/javascript application/x-javascript text/xml application/xml application/rss+xml text/javascript image/x-icon image/bmp image/svg+xml;

gzip_vary on;

Hangi sunucuyu tercih etmeliyim? Sıkıştırmak için hangi algoritmayı tercih etmeliyim? Sitemi nasıl hızlandırmalıyım? Hangi firma ile çalışmalıyım? Tüm bu sorulara karşı cevap olarak; “Sizlere her zaman en güncel ve doğru bilgileri hedefleyen bir firma ile çalışmalısınız” şeklinde bir yanıt vermek mümkündür. Çalışacağınız firmada aradığınız tüm bilgilere her zaman Natro ile ulaşacağınızı unutmayın.

0 Shares:
Benzer İçerikler
Devamını Oku

Sanal Sunucu Nedir?

Bu İçerikte Bahsedilen Konular Sanal Sunucuların Özellikleri Nelerdir?Sanal Sunucu Çeşitleri Nelerdir?Sanal Sunucuların Avantajları Nelerdir?Neden Sanal (Cloud) Sunucu Tercih…