Bandwidth Sorununa Çözüm

9 Mart 2007 tarihli, Kolaylıklar köşesine ait yazı.

bandwidthÖzellikle yeni bloglar digg‘e eklenip biraz popüler oldukları anda bandwidth’lerini aşıp servis dışı kalırlar. Bu durum bizde pek yaşanmasa da fazla bandwidth kullanımı site sahiplerinin en büyük sorunlarından biridir. Jeff Atwood, Reducing Your Website’s Bandwidth Usage yazısında bu soruna karşı çözümleri tartışıyor.

İnternet sitenizin popüler olup günde onbinlerce ziyaretçi ağırlaması tabii ki kötü bir şey değil. Ancak “internette popülerlik = daha fazla bant kullanımı” olduğundan bazı önlemler almakta yarar var. Peki bir sitenin bandwidth’ini azalmak için neler yapılabilir?

1. Resimler

Resimler, genelde bir yazıda en çok yer tutan bileşendir. Örneğin bu sitede ortalama bir yazının (boyut olarak) %90‘ını resimler oluşturur. Bu yüzden yazınızdaki resimleri başka bir sunucuda bulundurmak çok etkili olacaktır. Bunun için birkaç ücretli ve ücretsiz hizmet veren site mevcut:

  • Imageshack: Imageshack ücretsiz ve sınırsız depolama sunuyor. Ancak her bir resim için saatte max. 100MB download’a izin veriyor.
  • flickrFlickr: Ücretsiz ve kısıtlı depolama olarak kullanabileceğiniz Flickr yine sınırlandırılmış download’a izin vermekte. Yıllık 25$ verdiğiniz taktirde tüm sınırlamaları kaldırmasına karşın kullanım şartlarında fotoğrafların ticari amaçlı kullanılmaması ve flickr’a link verilmesi gerektiği belirtiliyor.
  • Photobucket: Ücretsiz bir Photobucket hesabı açarak sınırlı depolama alanı ve aylık 10GB transfer hakkına sahip oluyorsunuz. 25$ karşılığında ise (yıllık) bandwidth’iniz sınırsız oluyor.
  • Amazon S3: Yazar tarafından tercih edilen bu yöntemde 1GB alan karşılığı aylık 0.15$, 1GB bandwidth karşılığı ise 0.20$ ödüyorsunuz. Yukarıdaki fotoğraf paylaşım sitelerinin bazı şirketlerde engellendiğini hesaba katmak gerekirse, uzun vadede en mantıklı ve güvenli tercih Amazon S3 gibi görünüyor.

Unutmadan favicon.ico dosyanızın da yeterince küçük boyutlu olduğundan emin olun. Favicon için aylık 27GB bandwidth harcayan bir site olmak istemiyorsanız Junior Icon Editor gibi bir program kullanabilirsiniz.

2. HTTP Sıkıştırması

Resimlerin harcadığı bandwidth’e çözüm bulduğumuza göre sıra geldi geriye kalan içeriğe, yani yazılara. Web sunucunuzda HTTP compression (HTTP sıkıştırması) özelliğini aktive ettiğinizde yazılara harcadığınız bandwidth 3′te 1‘ine düşecektir. Aşağıda acikbilgi.com anasayfasının HTTP sıkıştırmalı ve sıkıştırmasız boyutlarına dikkat edin:

HTTP Compression

Apache web sunucusunda HTTP sıkıştırmasını .htaccess dosyasından bile aktive edebilirsiniz. HTTP sıkıştırmasının sitenizde çalışıp çalışmadığını kontrol etmek için httpZip Compression Check sayfasını kullanabilirsiniz.

3. RSS Beslemesi

RSS FeedÇoğu sitenin RSS beslemelerini RSS Feed başka sitelere taşıdığına (örnek olarak FeedBurner) şahit olmuşunuzdur. Bandwidth kullanımının yarısı RSS’ten kaynaklanan siteler için mükemmel bir çözüm. Hatta FeedBurner kullananlar için .htaccess dosyanıza şöyle bir de feed yönlendirme kodu ekleyebilirsiniz:

RewriteCond User-Agent: (?!FeedBurner).*
RewriteRule .*index.xml$|.*index.rdf$|.*atom.xml$
http://feeds.feedburner.com/acikbilgi/ [I,RP,L]

4. CSS ve JavaScript

Resimler, yazılar, beslemeler dışında sitenizde sürekli bandwidth isteyen içerik tabii ki CSS ve JavaScript dosyalarıdır. Şanslıyız ki bu dosyaları optimize eden araçlar internette mevcut:

Son Söz

Bandwidth kullanımını azaltmak için Jeff Atwood’un değinmediği -bence- en önemli konu web standartlarına uygun bir tasarım kullanmanızdır.

  • Tablolar yerine div’ler kullanarak,
  • Sayfaların html iskeletini doğru hazırlayarak,
  • id ve class etiketlerinden maksimum düzeyde yararlanarak

hem gereksiz html kodlarını azaltacak, hem de daha kaliteli bir siteye sahip olacaksınız. Douglas Bowman tarafından hazırlanan şu sunumları kesinlikle okumanızı tavsiye ederim:



Yorumlar - Başa Dön

gKAANs
9 Mart 2007

Çok güzel bir yazı. Ellerine sağlık

yakuter
11 Mart 2007

Aslında burada anlatılmayan bir çok konu var. Örneğin veritabanından bilginin çekilmesi konusu veya yapılan sorgu sayısının en aza indirilmesi.

basit AJAX uygulamalar için prototype gibi kütüphanelerin yerine 2 kb’lık bir kodla çözümler getirilmesi…

Hepsini biraraya getirdikten sanırım bantgenişliği en ideal seviyeye ulaşacaktır…

Onur
11 Mart 2007

Çok haklısın, dinamik sayfalar yerine statik sayfaların hazırlanıp kullanılması birçok haber sitesi tarafından uygulanan bir yöntem.

Kullanılmayan JS ve Ajax kütüphanelerin temizlenmesi de digg tarafından zamanında uygulandı ve site neredeyse %50 daha hızlı yüklenmeye başladı.

Keşke bizim de derdimiz bandwidth olsa, ziyaretçiler siteye sığmasa, kapıda beklese… :D

Gürsoy
28 Temmuz 2007

bendede buyuk sorun oldu bu ay 75 gb bw harcaması ya hosting dayanmaz buna napcam ben ya bu kadar cok ne harcar ki üyelerin resimleri imageshackta sunucuda öle yük yapcak cekecek dosyada yok ki ay bitmeden site kapanır heral :)

Muhammed Tahiroğlu
29 Eylül 2007

Merhabalar, ben de yazınızdan istifade ettim. Alıntı yaptığınız yazarın anlattığı Amazon S3 konusunda bir çalışma yapmış idim. İstifade etmek isteyenler için bağlantısını vereyim müsadenizle:

Makale 1: http://www.tahiroglu.com/post/amazon-s3‘e-cikan-yollar.aspx

Makale 2:
http://www.tahiroglu.com/post/amazon-s3-ile-tanisiyoruz.aspx

Bilim Teknik
1 Ocak 2008

Çok güzel açıklamışsınız.Günümüzde faturalandırma şeklinde hosting bilmiyordum.Kullandığımız kadarıyla ödemek çok karlı.Şayet standart paketleri aldığımız hosting firmalarının verdiği hizmetleri tam anlamıyla kullanamıyoruz.Bu da başu boşuna masraf sağlıyor.

ßi®isi
30 Mayıs 2008

ellerıne saglık dostum



Yorum Yazın

(gerekli)

(gerekli)


Yorum yapacaklar için bilgi:
Verdiğiniz mail adresi sitede asla görüntülenmeyecektir. Sonraki yorumlarınız için isim, e-posta gibi bilgiler cookie olarak bilgisayarınızda saklanacaktır.



Önizleme: