CDN Nedir? Neden Gereklidir?
CDN Nedir? Önemi Nelerdir?
Günümüzde internet siteleri oldukça önemli bir alana sahiptir. Bilişim, ticaret, hobi ve pazarlama gibi birbirlerinden değişik oldukça kapsamlı bir yelpazede, her daim web sayfaları üzerinde ihtiyaç duyulmaktadır. Herhangi bir web sayfasının verimli bir şekilde faaliyet gösterebilmesi için ise bazı gerekli hususlar yer almaktadır. Bu hususlardan bir tanesi de bu yazımızda ifade edeceğimiz CDN konusudur. İnternet sitelerinin performansı ve verimliliği için hız oldukça büyük önem arz etmektedir. Günümüzde kullanıcılar için hızlı ağ bağlantısı neredeyse her şey anlamına gelmektedir.
Özellikle dünyanın dört bir yanından kullanıcılara hizmet veren bir internet sayfanız mevcut ise, CDN yöntemi oldukça önemli, hatta olmazsa olmaz bir hale gelmektedir. Peki, bu CDN nedir? İngilizce gramerde Content Delivery Network kelimesinin kısaltması anlamına gelmektedir. Türkçe olarak ise “içerik dağıtım ağı” olarak da tabir edilebilir fakat bu terim, pek fazla kullanılmamaktadır.
Herhangi bir internet sitesine ait olan sabit bilgilerin kullanıcı tarafından en yakın sunucuya kopyalanması yöntemiyle daha seri bağlantı kurmasına yardımcı olan bir yöntemdir. Bir CDN şirketi kullanmak sadece siteniz için yararlı olması için değil, günümüz teknolojisinde artık zorunlu hale gelmiş olan bir oluşumdur. CDN sistemi kullanmak, web sitenize erişim hızını büyük bir ölçüde etkileyen önemli bir yöntemdir.
CDN sistemini kullanmaya başladığınız zaman, internet sitenizde yer alan sabit içerikler CDN sunucusunun içine kopyalanır. Herhangi bir kişi web sayfanıza bağlanmaya çalıştığı zaman, kendisine en yakın CDN sunucusunu tespit eder ve onun üzerinden bağlantı kurar.
Bununla birlikte daha hızlı ve daha verimli bağlantıya sahip olunmuş olur. Daha önce de ifade ettiğimiz gibi, özellikle dünyanın birçok farklı bölgelerinden ziyaretçi kabul eden bir siteye sahipseniz bu oldukça elzem bir konu haline gelir. Zira özellikle belli ülkeler arasındaki ağ bağlantıları gereğinden fazla zayıftır.
CDN sitemi sadece hız için değil, sitenizin güvenliği içinde önem arz etmektedir. Web sitenize karşı olası yapılabilecek bir saldığı söz konusu olduğunda eğer CDN kullanıyorsanız; yapılan saldırılar sizin ana sunucunuza yönelik değil, CDN sunucusuna yönelik yapılacaktır. Bunun için CDN hizmeti veren tüm şirketlerin güvenlik sistemleri oldukça güçlüdür.
Güvelik konusunu oldukça ciddiye alan kişiler için ek olarak güvenlik tercihlerin de bulunmaktadır. Aynı zamanda CDN kullanmak internet sitenizin yoğunluk yükünü de azaltır. Ana sunucunuza fazla yük bindirmemiş olur ve kullanıcı yükü eşit bir şekilde paylaştırır. Bu durumda eş zamanlı olarak sunucu giderlerinizin azalmasına yardımcı olacak.
CDN hizmeti sağlayan dünya çapında bazı şirketler yer almaktadır. Bu şirketlerden bazılarını şu şekilde sıralayabiliriz;
- Akamai: Dünya genelinde en çok tercih edilen ve en büyük CDN şirketleri arasında yer almaktadır ve bu şirketin ağ trafiği oldukça kapsamlıdır. Dünya genelinde yüzbinlerce sunucusu yer almaktadır.
- BitGravity: HD videoların hızlı bir şekilde yüklenmesi ve farklı bir seçenek olarak sunulması yönünde çok başarılı bir şirkettir.
- CacheFly: 30 gün ücretsiz deneme imkânı sunan bu şirket ise yine oldukça başarılı işler çıkartan bir CDN şirketidir. Gerçek ve eş zamanlı internet sayfası trafiğini raporlama hizmeti sağlamaktadır. Hizmet kalitesi anlamında üst sıralarda yer alan bir şirkettir.
- Broadpeak: Bu şirket ise yine video içeren içeriklerin hızlı bir şekilde yüklenmesi bakımından uzmanlaşmış bir şirkettir. Kendi alanında üst sıralarda yer alan bir şirkettir. Çok güçlü altyapı sistemine sahiptir ve ziyaretçi sayısı oldukça yüksek olan internet siteleri için kolaylıkla kullanılabilir.
Şimdi ise CDN (Content Delivery Network) sisteminin ne anlama geldiğini ve kullanılma nedenini maddeler halinde anlatmaya çalışacağız;
- CDN sistem, bir internet sayfasının işlem gecikmesi ve en düşük ağ ile en hızlı bir şekilde ziyaretçilere ulaştırmak için coğrafi bakımdan değişik bölgelerde konumlanmış olan sunucu kümelerine verişmiş olan isimdir.
- Pek çok haber ve e-ticaret sitesi sayfa açma sürelerini minimum seviyede tutabilmek adına CDN kullanmaktadır. CDN sistemi üzerinde kullanıcıdan kullanıcıya genel olarak pek değişiklik göstermeyen HTML, CSS, JS, video, imaj ve font dosyaları sunulmaktadır. CDN sistemi bu şekilde olan kaynakları origin olarak isimlendirdiği asıl sunucudan (Örnek: hürriyet.com.tr) çekerek belli bir süreliğine cache’ler. Bu noktadan itibaren CDN sistemi ilgili olan kaynaklar için kullanıcıların yapmış olduğu istekleri cache’lenen bu kopya üzerinden sağlamaya başlar. Cache süresi dolduğu zaman origine yapılmış olan isteklerle kaynaklar yeniden tazelenir.
- CDN sunucuları dünya genelinde yer alan birçok ülkede sunuculara yer vererek kullanıcıların olası yaşayacağı ağ gecikmelerini minimum seviyeye çeker. Bunun yanında dağınık vaziyetteki sunucuların konu olan sitenin veri merkezinde sıkışıklık yaşamasını da engellemektedir.
- CDN sunucuları pek çok internet sayfasına aynı sunucular aracılığı ile CDN hizmeti sağladıkları için maliyetleri pekiştirilmiş altına alarak düşürebilir. Bunun yanında CDN’de saklanmış olan verilerin bozulması sebebi ile herhangi bir kayıp söz konusu olmayacağı için CDN hizmeti için daha az maliyetli, merdiven altı olarak tabir edilebilecek bir veri merkezlerinde bulunan sunucuları kullanıp maliyeti de iyice aşağı çekebilir. İnternet sayfaları açısından bakıldığı zaman ise CDN kullanımı sayesinde büyük ebatlı kaynaklar veri merkezlerinin içinde servis edilmeyip bulut sağlayıcı ve veri merkezlerine ödenecek olan fiyattan kaçınılmış olur.
- Yalnızca statik içerikten meydana gelen bir site basit bir şekilde CDN aracılığı ile hizmet sağlayabilir. Sunucu aracılığı ile sayfa oluşturma ya da api hizmeti sağlayan dinamik internet sitelerinde ise CDN entegrasyonu için pek çok farklı yöntem bulunmaktadır. Bu konu ile ilgili uygulanabilecek bazı yöntemler ise aşağıdaki gibidir.
- İlk ve tahminen en popüler ödeme süresi internet sitesinin ana sayfasını ve dinamik istekleri kendi veri alanında karşılamak ve ana sayfanın HTML ’si içinde referans sağlanan JS, CSS ve imaj gibi kaynaklar için CDN adresi kullanılması gerekir.
- Bu opsiyonda ise ana sayfa www subdomain veya apex domain’den, dinamik sayfalar ise web istekleri ve www’den api alınarak sunulur. Statik kaynaklar ise CDN ya da herhangi bir subdomain yoluyla sunulabilir. CDN subdomainin DNS kayıtları içerisinde CDN sağlayıcısına ait olan IP adresini bulur.
- İkinci ve tahminen daha etkili ve doğru olan opsiyonda ise birinci opsiyona ilave olarak CDN ana sayfada tutulur. Alt sayfalar ve ana sayfada dinamik bakımdan değişiklik gösteren Login gibi bölümlerle beraber diğer dinamik bölümler Ajax istekleriyle veri merkezinde geri çekilerek sunum yapılır.
- Üçüncü opsiyon olarak bakacak olursak internet sitesinin tüm trafiğini CDN sistemine yönlendirmek ve en son kullanıcının veri merkezine direk olarak ulaşması yerine CDN sitemi aracılığı ile ulaşması sağlanır. Anlaşılacağı gibi bu yöntemle CDN sistemi tüm trafiği üstüne alarak cachelenebilek statik verileri origin sunucuya ulaşmadan kullanıcıya aktaracaktır. Bu opsiyonda cachelenmesi imkânsız olan api istekleri ve dinamik sayfaların ise doğrudan origin sunucusuna aktarılır ve gelen cevap kullanıcı tarafına iletilir.
- Cloudflare ve diğer dünya çapında CDN sağlayıcıları aracılığı ise üçüncü seçeneğin pek çok avantajının yanında bazı dezavantajları da görülmektedir. En büyük avantajına bakacak olursak CDN entegrasyonu için tabiri caizse elini suya dokundurmaması anlamına gelir. Yalnızca DNS kaydını CDN sistemine yönlendirerek bu işlem tamamlanabilir.