CDN nedir, nasıl çalışır ve neden CDN kullanmalısınız?
Yayınlanan: 2016-03-22Tek bir milisaniye bile bekleme süresi olmadan, her web sayfasının anında yüklendiği bir dünya hayal edin. Bu henüz mümkün olmasa da, buna birkaç adım daha yaklaşmamıza yardımcı olacak teknolojiler ortaya çıkıyor.
İçerik dağıtım ağı (veya kısaca CDN ), bu hedefe ulaşmaya yönelik adımlardan biridir.
Bu makalede CDN'nin ne olduğunu, CDN modelinin geleneksel web barındırma modeliyle nasıl karşılaştırıldığını açıklayacağım, web siteniz için CDN kullanmanın avantajlarını ve dezavantajlarını tartışacağım ve son olarak web sitenizi nasıl başlatacağınızı göstereceğim. bir CDN ile.
CDN nedir?
CDN, içeriğinizin kullanıcılarınıza sunulma şeklini iyileştirmek amacıyla, her biri web sitenizin bir kopyasını barındıran, coğrafi olarak dünya çapında dağılmış bir web sunucuları sistemidir.
CDN'nin temel amacı nedir?
CDN'nin temel amacı, web sitenizin içeriğini son kullanıcılara daha verimli ( yani daha hızlı ) sunmaktır.
CDN kullanıyorsanız, bir kullanıcı web sitenizin içeriğini yüklediğinde, kullanıcıya en yakın CDN sunucusu bu içeriği sağlayacaktır.
İçeriğin kat edeceği mesafe daha kısa olduğundan kullanıcıya daha hızlı ulaşır, bu da web sitenizin yüklenme süresinin daha hızlı olduğu anlamına gelir!
Ancak göreceğimiz gibi CDN kullanmanın tek avantajı bu değil !
CDN nasıl çalışır?
Daha önce de tartıştığımız gibi, web barındırma kurulumunuzun bir parçası olarak CDN kullandığınızda, ağdaki sunucuların her biri web sitenizin bir kopyasını barındırır.
Bu CDN sunucuları, ağın ucunda ve kullanıcılara en yakın oldukları için “kenar” sunucular olarak adlandırılmaktadır.
Bu, web barındırma şirketiniz tarafından sağlanan ve web sitenizi oluştururken ve güncellerken dosyalarınızın otomatik olarak yüklendiği ve saklandığı "orijin" sunucusunun tersidir.
Web sitenizin başlangıç sunucusundan bu uç sunuculara nasıl ulaştığını merak ediyor olabilirsiniz?
Bu sizinkinin itme mi yoksa çekme CDN'si mi olduğuna bağlı…
Pull CDN nedir (ve nasıl çalışır)?
Çekme CDN kurulumu , dosyaların ihtiyaç duyulduğu anda kaynak sunucudan çekilmesiyle çalışır.
Bir kullanıcı ilk kez bir dosya istediğinde, uç sunucunun dosyayı kaynak sunucunuzdan (yani mevcut barındırma sağlayıcınızdan) okuması gerekecektir.
Edge sunucusu daha sonra bu dosyanın önbelleğe alınmış bir sürümünü depolayacaktır. "Önbelleğe alınmış" sürüm, dosyanın belirli bir ana ait bir kopyası anlamına gelir.
Dosyaya yönelik gelecekteki istekler, dosyanın süresi dolana (güncelliğini kaybedene kadar) doğrudan uç sunucudan gelecektir (kaynak sunucudan çekilmek yerine).
Süre sona erdikten sonra dosyanın bir kez daha kaynak sunucudan yenilenmesi ve önbelleğe alınması gerekecektir.
Push CDN nedir (ve nasıl çalışır)?
Push CDN , kullanıcıların dosyalarını CDN'nin kendisine yüklemelerine ("push") olanak tanır ve dosyalar, yüklendikten sonra hemen uç sunuculara dağıtılır.
Yani dosyalarınız, bir başlangıç sunucusundan alınmaya gerek kalmadan zaten her uç sunucuda depolanıyor.
Bu daha az yaygın bir seçenektir; ancak medyanın bir kopyası her zaman uç sunucularda saklanacağından, büyük medya dosyalarını dağıtmak için avantajlıdır .
CDN web barındırma hizmetinizin yerini mi alıyor?
Hayır, CDN web barındırma hizmetinizin yerini almaz . Birlikte çalışırlar.
Orijinal dosyalarınızın tümü web barındırıcınızın sunucusunda saklanır. Bu başlangıç sunucusudur.
CDN sunucuları yalnızca kaynak sunucudaki dosyaların kopyalarını içerir .
Web barındırma hizmetinizden kurtulursanız, CDN'de dosyaları kopyalayacak hiçbir yer kalmayacak!
Bir CDN'nin Video Özeti
Hala kafanız karıştıysa, CDN'yi çok basit bir şekilde açıklayan kısa bir videoyu burada bulabilirsiniz:
CDN olmadan web barındırma sorunu
Geleneksel web barındırma modelinde, web sitenizin tüm dosyaları (HTML, CSS, resimler vb.) dünyada tek bir konumda barındırılır; temel olarak web barındırma sağlayıcınızın veri merkezinin bulunduğu her yerde.
Son kullanıcılar web sitenize eriştiğinde sitenin içeriği her zaman bu tek konumdan alınır .
Bunun birkaç dezavantajı var:
1. Hızlar mesafe arttıkça azalır
Web barındırma sağlayıcınızın veri merkezi Teksas'ta bulunuyorsa, bir kullanıcı web sitenizi her yüklemek istediğinde içerik o Teksas veri merkezinden teslim edilecektir.
Dosyaların daha fazla mesafe kat etmesi gerektiğinden, kullanıcı coğrafi olarak sunucunuzdan uzaklaştıkça aktarım hızları düşme eğilimindedir. Bir kullanıcı veri merkezinden ne kadar uzakta bulunursa web sitenizin yüklenmesi o kadar uzun sürer.
Bu nedenle, Birleşik Krallık'taki bir web sitesi kullanıcısı, Teksas veri merkezine yakınlığı nedeniyle web sitenizi ABD'deki bir kullanıcıya göre daha yavaş yükleyecektir.
2. Sınırlı transfer oranları
Birden fazla kullanıcının aynı anda web sitenizi yüklemeye çalıştığı bir durumu düşünün.
Nasıl ki kişisel bilgisayarınızda dosyaların ağ üzerinden ne kadar hızlı aktarılabileceği (iş hacmi) konusunda sınırlamalar varsa, sunucuların da dosyaları ne kadar hızlı aktarabilecekleri konusunda sınırlamaları vardır.
Mevcut web hostinginiz trafikte böylesine bir artışa hazır mı?
Özellikle aktarım hızlarının belirtilmediği paylaşımlı barındırma çözümlerini göz önünde bulundurun. Bu ve diğer ortamlarda aktarım hızları oldukça sınırlı olabilir ve bu da web sitenize gelen trafikte artış olduğunda fark edilebilir bir performans etkisine neden olabilir.
Bu nedenlerden dolayı, web sitesinin içeriği tüm son kullanıcılara aynı anda gönderildiğinden, trafikte meydana gelen artış web sitenizin yüklenme sürelerini artırabilir.
CDN kullanmanın avantajları
CDN modeli ile geleneksel web hosting modelinin dezavantajlarının üstesinden gelebiliyoruz. Aslında bir CDN'nin aşağıdakiler gibi çeşitli avantajları vardır:
1. Daha hızlı yükleme süreleri (içerik kullanıcıya en yakın sunucudan sunularak)
Kullanıcı, barındırma sağlayıcınızın veri merkezinden ne kadar uzakta bulunursa, dosyaların daha uzak bir mesafeye aktarılması gerektiğinden web sitenizin yüklenmesinin o kadar uzun süreceğini unutmayın.
Bir CDN, dünyanın neresinde bulunduklarına bağlı olarak her bir son kullanıcıya en yakın veya en verimli olan uç sunucudan içerik sunacaktır.
Örneğin, Çin'deki bir kişi web sitenizi yüklerse CDN, web sitenizin içeriğinin bir kopyasını Çin'deki bir sunucudan otomatik olarak yükleyebilir. Birisi sitenize Birleşik Krallık'tan erişecekse, web sitenizi söz konusu kullanıcıya yüklemek için Birleşik Krallık'taki bir sunucu kullanılabilir.
CDN, her son kullanıcı için hangi sunucunun en verimli seçim olduğunu otomatik olarak belirleyecektir.
2. Daha iyi trafik artışı yönetimi (dosyaların dağınık aktarımıyla)
Daha önce de belirtildiği gibi sunucular, kendilerinden aynı anda ne kadar veri aktarılabileceği konusunda kısıtlamalar içerir. CDN, birden fazla kullanıcı aynı anda erişmeye çalıştığında web sitenizin performansını artırmanıza yardımcı olur.
CDN'nin çalışma şekli göz önüne alındığında, web sitenize gönderilen eşzamanlı istekler, isteklerin nereden geldiğine bağlı olarak büyük olasılıkla dünya genelinde birden fazla bölgedeki birden fazla sunucu tarafından ele alınacaktır.
Bu şekilde, belirli bir sunucu, kullanıcılardan gelen tüm isteklerle dolmaz. CDN sağlayıcıları, trafikteki ani bir yükseliş sırasında bile dosyalarınızın verimli bir şekilde yüklenmesini sağlamak için başka prosedürler de uygulayacaktır.
3. Daha iyi güvenlik (DDoS azaltma ve koruma yoluyla)
DDoS saldırısı, sunucunuzun, sitenizi çökertmek veya aşırı aktarım nedeniyle artan bant genişliği ücretlerine neden olmak amacıyla web sitenize yönelik meşru olmayan isteklerle dolup taşması anlamına gelir.
CDN sağlayıcınız muhtemelen bir DDoS saldırısı sırasında web sitenizin performansını ve çalışma süresini artırmaya yardımcı olacak DDoS algılama ve azaltma mekanizmaları sunacaktır.
CDN kullanmanın dezavantajları
Ancak CDN kullanmanın birkaç dezavantajı vardır.
1. Maliyet: CDN'ler genellikle kullanım başına ödemelidir
CDN sağlayıcıları genellikle aktardığınız içeriğin miktarına göre ücret alır. Bu nedenle aylık maliyetiniz aya göre değişir .
Mevcut web barındırma sağlayıcınız, mevcut barındırma paketinizin bir parçası olarak halihazırda belirli miktarda aylık transfer içeriyor olabilir; bu nedenle CDN'nin ek maliyetinin işletmenizin çevrimiçi varlığı için uygun olup olmadığını değerlendirmeniz gerekecektir.
"Push CDN" sağlayıcılarının sıklıkla depolama alanı için de ücret aldığını unutmayın (aşağıya bakın).
Buluta geçişin size ne kadara mal olacağını anlamanıza yardımcı olması için aşağıdaki senaryoyu göz önünde bulundurun…
Web sitenizin boyutunun 1 MB olduğunu ve CDN sağlayıcınızın GB başına 0,085 ABD doları tutarında aktarım ücreti aldığını varsayalım. 10.000 kullanıcının web sitenizin tamamına erişmesinin maliyeti şu şekilde olacaktır: ((1/1024)×10.000) ÷ 0,085 = 114 sent veya 10.000 istek başına 1,14 ABD doları .
Gördüğünüz gibi bu çok uçuk bir maliyet değil.
Ancak birçok CDN teklifi, dosyalarınızı mevcut barındırma sağlayıcınızdaki depolama konumlarından okur ve bu da ek bir maliyettir. Bu kaynak sunucu, Amazon S3 gibi bir dosya depolama sistemi olabileceği gibi mevcut barındırma sağlayıcınız da olabilir.
Web siteniz dinamik içerik barındırıyorsa yine de bu tür dosyaları işleyebilecek bir barındırma çözümüne sahip olmanız gerekecektir.
CDN çözümleri genellikle kullanım başına ödemeli olduğundan, bir DDoS saldırısı mali açıdan olumsuz olabilir; bu tür saldırıların dosya aktarımlarında neden olduğu ciddi artış, işletmeniz için maliyetin artmasına neden olur.
Ancak CDN sağlayıcıları, daha önce de belirtildiği gibi bu tür saldırıları tespit etmek ve azaltmak için çalışıyor.
Not: En iyi web barındırma sağlayıcılarının birçoğu artık planlarına ücretsiz CDN hizmetlerini dahil ediyor.
2. Değişen içeriği önbelleğe almak için ekstra yapılandırma gerekiyor
Bir CDN'nin, web sitenizin içeriğinin dünya çapındaki kopyalarını önbelleğe alarak çalıştığını unutmayın.
Ancak çoğu web sitesi, web sitesine erişen belirli kullanıcıya veya diğer kriterlere (belirli bir kullanıcıya yönelik hoş geldiniz mesajları, alışveriş sepetleri vb.) bağlı olarak değişen bazı içerikler içerir.
Bu tür içeriklerin, istek başına sürekli olarak güncellenmesi nedeniyle dünya çapında önbelleğe alınması o kadar da önemsiz değildir.
Akış dosyaları, CDN'de kullanılması özel dikkat gerektiren başka bir içerik biçimidir. Daha fazla ayrıntı için aşağıya bakın.
CDN ile İlgili Diğer Hususlar
Dosyalarınızı güncellerken dosya önbelleğini yenileme
Dosyalarınızdan birini çekme CDN'si kullanarak güncellemeniz gerektiğinde, bir sonraki istekte yenilenmeleri için dünya çapında önbelleğe alınan tüm kopyaların da süresinin dolması gerekir.
Bunun gerçekleşmesi için, varsayılan süre sonu süresini (sağlayıcıya göre değişir) beklemeniz veya önbelleğe alınan dosyaların derhal geçersiz kılınmasını sağlamanız (önbelleği manuel olarak temizleyerek) gerekebilir.
Dosyalarınızı güncellemek bu ek adımı içerse de, web sitenizin statik dosyaları muhtemelen çok sık güncellenmeyecektir.
Sık erişilmeyen dosyalar için yeterli son kullanma süresinin sağlanması
Pull CDN çözümleri, dosyalarınızın bir kopyasını her zaman her uç sunucuda bulundurmak zorunda değildir (aşağıda daha ayrıntılı olarak ele alınmıştır). Bir dosyanın önbelleğe alınmış bir sürümü zaten yoksa, dosyanın kaynak sunucudan çekilmesi gerekir.
Bu, videolar gibi daha büyük dosyalar için daha büyük bir sorundur, çünkü bu tür dosyaların kaynak sunucudan yüklenmesinin performans etkisi oldukça önemli ölçüde hissedilebilir.
Bu soruna yönelik bazı çözümler, önbelleğe alınan dosyanın son kullanma süresini artırmak (mümkünse), böylece dosyanın kaynak sunucudan daha sık yenilenmesine gerek kalmaz veya büyük dosyaları bir push CDN çözümünde depolamaktır (aşağıya bakın) ).
Statik ve Dinamik İçerik
Web siteleri iki temel veri türünü içerir: statik içerik ve dinamik içerik.
Bir web sitesinde gördüğünüz içeriğin çoğu (yani görünüm ve his, resimler, videolar, CSS ve JavaScript dosyaları vb.) genellikle statik içeriktir. Statik içerik hiçbir zaman değişmez (kaynak dosyayı yeniden yüklemediğiniz sürece).
Örneğin, web sitenizi kim ziyaret ederse etsin veya sayfayı kaç kez yeniden yüklerseniz yükleyin, şirketinizin logosunun görünümü değişmeyecektir.
Dinamik içerik, verileri kimin talep ettiğine veya diğer kriterlere bağlı olarak değişir .
Örneğin John banka hesabına giriş yaptığında bakiyelerini görüyor. Ancak David giriş yaptığında bakiyeler Joe'nun gördüğüyle aynı değildir .
Başka bir örnek olarak: WordPress kontrol paneline giriş yaptıktan sonra “Merhaba John!” Gibi bir mesaj göreceksiniz.
Kullanıcıya veya başka kriterlere bağlı olarak değişen içerikler dinamik içerik olarak kabul edilir.
Bir CDN Statik, Dinamik ve Akış içeriğini nasıl işler?
Bu noktada önemli bir soruya geliyoruz: “CDN’de ne tür dosyalar saklayabilirim?”.
Statik dosyalar, web sitenizi kim yüklerse yüklesin her zaman aynı kalma eğiliminde olduğundan, dosyalar nadiren güncellendiğinden dünya çapında bir CDN aracılığıyla önbelleğe alınmaya çok uygundur.
Dinamik içeriğe (örneğin bir alışveriş sepeti) gelince, genellikle dünya çapında önbelleğe alınabilecek tek bir dosya yoktur, çünkü bu dosya her kullanıcıya veya diğer kriterlere göre sıklıkla değişir.
Ancak CDN sağlayıcıları, kullanıcı ile barındırma sunucunuz arasındaki en hızlı rotayı bulmak gibi dinamik içerik yükleme verimliliğini artırmak için çözümler uyguluyor.
Birçok CDN sağlayıcısı, hem canlı hem de isteğe bağlı medyayı bir CDN aracılığıyla yayınlamak için çözümler de uygulamaya koydu.
CDN nasıl kurulur
Şimdi muhtemelen şöyle düşünüyorsunuz: “Web sitemin bir CDN'ye ihtiyacı olduğuna ikna oldum! Nasıl geçiş yapacağım?”.
Cevap, hangi barındırma sağlayıcısını kullandığınıza ve ne tür CDN çözümü istediğinize bağlıdır.
Bazı web barındırma sağlayıcıları, kontrol panelleri aracılığıyla CDN'yi kolayca etkinleştirme seçeneği sunar. Diğer kurulumlar bazı ekstra adımlar gerektirir.
Web sitenizin tamamına bir CDN katmanı ekleyin
Bu seçenek, küçük işletme sahipleri için kurulumu en basit seçeneklerden biridir. Kullanıcılardan web sitenizin içeriğine erişmeye yönelik her istek, öncelikle bir CDN sağlayıcısı tarafından yönetilen bir sistem aracılığıyla filtrelenecektir.
Statik içerik CDN'den yüklenirken dinamik içerik doğrudan mevcut sunucunuzdan yüklenir (veya daha önce tartışıldığı gibi dinamik içeriğin yükleme süresini iyileştirmek için bir teknik kullanılabilir).
Dosyaları CDN aracılığıyla dağıtmak için aslında perde arkasında bir çekme CDN'si uygulanacaktır.
CloudFlare bu tür CDN çözümü sunan şirketlerden biridir. CloudFlare gibi bazı şirketler, web sitenizin performansı için yalnızca CDN'nin ötesinde başka iyileştirmeler de sağlayacaktır.
Nasıl kurulur?
Bu tür bir CDN sistemi kurmanın ana adımı, web sitenizin DNS kayıtlarını CDN katmanını işaret edecek şekilde güncellemektir. CDN katmanı daha sonra istekleri gerektiği şekilde kaynak sunucunuza yönlendirecektir.
CDN'nin dosyaları çekebilmesi için mevcut barındırma çözümünüzü saklamanız gerekecektir.
Pull CDN nasıl kurulur
CDN'de dağıtılacak dosyalarınızın kaynak sunucunuzdaki konumunu belirlersiniz. CDN daha sonra dosyaları gerektiği gibi kaynak sunucudan çekecektir.
Ayrıca web sitenizdeki dosyaların bağlantılarını CDN'nin uç noktasına güncellemeniz veya DNS ayarlarınızı CDN'yi işaret edecek şekilde güncellemeniz gerekecektir.
Push CDN nasıl kurulur
Dosyalarınızı CDN sağlayıcısına yükleyin. Ayrıca web sitenizdeki dosyaların bağlantılarını CDN'nin uç noktasına güncellemeniz veya DNS ayarlarınızı CDN'yi işaret edecek şekilde güncellemeniz gerekecektir.
Web barındırma sağlayıcımdan ayrılmalı mıyım?
Hayır. Bir CDN çözümü satın aldıktan sonra bile bir web barındırma sağlayıcısında kalmanız gerekecektir.
İçeriği önbelleğe almak için CDN'nin kullanıldığını unutmayın; Web siteniz herhangi bir dinamik içerik içeriyorsa, bu içeriği işleyebilmek için yine de mevcut barındırma çözümünüzü korumanız gerekecektir.
Hangi barındırma şirketleri CDN sağlıyor?
Günümüzde pek çok barındırma şirketi, paylaşılan barındırma planlarının bir parçası olarak bir CDN sağlıyor:
- SiteGround (kendi özel SiteGround CDN'lerini kullanın)
- Bluehost (Cloudflare önceden etkindir)
- Kinsta (ücretli bir Cloudflare planı ücretsiz olarak dahildir)
- WP Engine (ücretli bir Cloudflare planı ücretsiz olarak dahildir)
- HostGator (Cloudflare yalnızca İşletme planına dahildir)
- IONOS (Cloudflare yalnızca Uzman planına dahildir)
- Cloudways (Cloudflare Enterprise ayda yalnızca 4,99 $ karşılığında eklenebilir)
Çözüm
CDN'ler, dosyaların kullanıcılara aktarılması için gereken süreyi azaltarak web sitenizin verimliliğini artırmak için uygun bir çözümdür. Bu, muhtemelen web sitenizdeki müşteri tutma oranını artırmaya ve hatta muhtemelen arama sonucu sıralamanızı iyileştirmeye hizmet eder.
CDN'ler aynı zamanda mevcut barındırma kurulumunuzdaki dosya isteklerinin yükünü de azaltacaktır; bu da büyük trafik hacimlerinin yönetilmesine yardımcı olabilir.
Bununla birlikte, bir CDN genellikle artan bir maliyetle gelir. Web siteniz bir CDN'nin sunabileceği performans iyileştirmesini hak ediyor, ancak faydaların potansiyel maliyetlerden ve diğer ödünlerden daha ağır basması gerekiyor.
Bir CDN'nin web sitenizin performansını artırmak için atabileceğiniz birçok adımdan yalnızca biri olduğunu unutmayın. Hızlı bir web barındırma seçmek ilk (ve en önemlisi).
Ayrıca genel olarak web sitenizin hızını artırmak (görüntü sıkıştırma gibi) ve özellikle WordPress web sitenizin yükleme sürelerini iyileştirmek için yapabileceğiniz birçok başka şey de vardır!
Web siteniz için CDN kullandınız mı? Aşağıdaki yorumlarda CDN'ler hakkında ne düşündüğünüzü bize bildirin!