Ce este un CDN, cum funcționează și de ce ar trebui să îl utilizați?!
Publicat: 2016-03-22Imaginați-vă o lume în care fiecare pagină web se încarcă instantaneu, fără nici o milisecundă de timp de așteptare. Deși acest lucru nu este încă posibil, apar tehnologii care ne ajută să ne apropiem câțiva pași.
O rețea de livrare de conținut (sau CDN pe scurt) este unul dintre pașii către atingerea acestui obiectiv.
În acest articol, voi explica ce este un CDN, cum se compară un model CDN cu modelul tradițional de găzduire web, voi discuta avantajele și dezavantajele utilizării unui CDN pentru site-ul dvs. și apoi, în cele din urmă, vă voi arăta cum să începeți site-ul dvs. cu un CDN.
Ce este un CDN?
Un CDN este un sistem de servere web, dispersate geografic în întreaga lume, fiecare dintre ele găzduind o copie a site-ului dvs., pentru a îmbunătăți modul în care conținutul dvs. este livrat utilizatorilor dvs.
Care este scopul principal al unui CDN?
Scopul principal al unui CDN este de a servi conținutul site-ului dvs. mai eficient ( adică mai rapid ), utilizatorilor finali.
Dacă utilizați un CDN, atunci când un utilizator încarcă conținutul site-ului dvs., serverul CDN care este cel mai apropiat de utilizator va furniza acel conținut.
Deoarece conținutul are o distanță mai mică de parcurs, acesta ajunge mai repede la utilizator, ceea ce înseamnă că timpii de încărcare a site-ului dvs. sunt mai rapizi!
După cum vom vedea, totuși, acesta nu este singurul avantaj al folosirii unui CDN!
Cum funcționează un CDN?
După cum am discutat deja, atunci când utilizați un CDN ca parte a configurației dvs. de găzduire web, fiecare dintre serverele din rețea găzduiește o copie a site-ului dvs. web.
Aceste servere CDN sunt numite servere „edge” deoarece sunt la marginea rețelei și sunt cele mai apropiate de utilizatori.
Acest lucru este în contrast cu serverul „de origine”, care este furnizat de compania dvs. de găzduire web și este locul în care fișierele dvs. sunt încărcate și stocate automat, atunci când vă creați și actualizați site-ul.
S-ar putea să vă întrebați cum ajunge site-ul dvs. de la serverul de origine și pe aceste servere edge?
Ei bine, asta depinde dacă al tău este un CDN push sau pull ...
Ce este Pull CDN (și cum funcționează)?
O configurare pull CDN funcționează prin extragerea fișierelor de pe serverul de origine , pe măsură ce sunt necesare.
Prima dată când un utilizator solicită un fișier, serverul edge va trebui să citească fișierul de pe serverul dvs. de origine (adică furnizorul dvs. actual de găzduire).
Serverul edge va stoca apoi o versiune în cache a acelui fișier. O versiune „cache” înseamnă doar o copie a fișierului din acel moment particular de timp.
Solicitările viitoare pentru fișier vor veni direct de la serverul edge (în loc să fie extrase de la serverul de origine), până când fișierul expiră (devine învechit).
După expirare, fișierul va trebui din nou reîmprospătat de pe serverul de origine și stocat în cache.
Ce este un Push CDN (și cum funcționează)?
Un CDN push permite utilizatorilor să încarce („push”) fișierele lor în CDN-ul propriu-zis, iar fișierele sunt apoi distribuite imediat către serverele edge, odată încărcate.
Prin urmare, fișierele dvs. sunt deja stocate pe fiecare server edge, fără a fi nevoie să fie extrase de pe un server de origine.
Aceasta este o opțiune mai puțin comună; cu toate acestea, este avantajos pentru distribuirea de fișiere media mari , deoarece o copie a suportului media va fi întotdeauna stocată pe serverele edge.
Un CDN vă înlocuiește găzduirea web?
Nu, un CDN nu înlocuiește găzduirea dvs. web . Ele lucrează împreună.
Fișierele tale originale sunt toate stocate pe serverul gazdei tale web. Acesta este serverul de origine.
Serverele CDN conțin doar copii ale fișierelor de pe serverul de origine.
Dacă scapi de găzduirea web, CDN-ul nu va avea de unde să copiezi fișierele!
Rezumatul video al unui CDN
Dacă sunteți încă puțin confuz, iată un videoclip rapid care explică un CDN în termeni foarte simpli:
Problema cu găzduirea web fără un CDN
Cu modelul tradițional de găzduire web, toate fișierele site-ului dvs. (HTML, CSS, imagini etc.) sunt găzduite într -o singură locație din lume - practic oriunde se află centrul de date al furnizorului dvs. de găzduire web.
Când utilizatorii finali accesează site-ul dvs. web, conținutul site-ului este întotdeauna preluat din această locație .
Există mai multe dezavantaje în acest sens:
1. Vitezele scad pe distanță
Dacă centrul de date al furnizorului dvs. de găzduire web este situat în Texas, de fiecare dată când un utilizator dorește să vă încarce site-ul web, conținutul va fi livrat din acel centru de date din Texas.
Vitezele de transfer tind să scadă cu cât utilizatorul este mai departe de serverul dvs., deoarece fișierele trebuie să parcurgă o distanță mai mare. Cu cât un utilizator este mai departe de centrul de date, cu atât este nevoie de mai mult timp pentru ca site-ul dvs. să se încarce.
Deci, un utilizator de site din Marea Britanie, va încărca site-ul mai lent decât un utilizator din SUA, datorită apropierii lor de centrul de date din Texas.
2. Rate de transfer limitate
Luați în considerare o situație în care mai mulți utilizatori încearcă toți să vă încarce site-ul în același timp.
Așa cum computerul personal are limitări cu privire la cât de repede pot fi transferate fișierele în rețea (rata de transfer), serverele au, de asemenea, limitări cu privire la cât de repede pot transfera fișiere.
Este găzduirea dvs. actuală pregătită pentru o astfel de creștere a traficului?
Luați în considerare în mod specific soluțiile de găzduire partajată, unde ratele de transfer nu sunt specificate. În aceste medii și în alte medii, ratele de transfer pot fi destul de limitate, ceea ce poate duce la un impact vizibil asupra performanței atunci când există o creștere a traficului către site-ul dvs. web.
Din aceste motive, o creștere a traficului poate crește timpul de încărcare a site-ului dvs., deoarece conținutul site-ului este trimis tuturor utilizatorilor finali odată.
Avantajele utilizării unui CDN
Cu un model CDN, putem depăși dezavantajele modelului tradițional de găzduire web. Într-adevăr, un CDN are mai multe avantaje, cum ar fi:
1. Timpi de încărcare mai rapid (prin difuzarea conținutului de pe cel mai apropiat server de utilizator)
Rețineți că, cu cât utilizatorul este mai departe de centrul de date al furnizorului dvs. de găzduire, cu atât va dura mai mult până când site-ul dvs. web se încarcă, deoarece fișierele trebuie să fie transferate pe o distanță suplimentară.
Un CDN va difuza conținut de pe un server edge care este fie cel mai apropiat de fiecare utilizator final, fie cel mai eficient pentru fiecare utilizator final, în funcție de locul în care se află acesta în lume.
De exemplu, dacă cineva din China ar încărca site-ul dvs. web, CDN-ul ar putea încărca automat o copie a conținutului site-ului dvs. de pe un server din China. Dacă cineva ar accesa site-ul dvs. din Regatul Unit, ar putea fi folosit un server din Marea Britanie pentru a încărca site-ul dvs. la acel utilizator specific.
CDN-ul va determina automat care server este cea mai eficientă alegere pentru fiecare utilizator final.
2. Gestionare mai bună a vârfurilor de trafic (prin transferul dispersat de fișiere)
După cum sa menționat anterior, serverele conțin restricții cu privire la cât de multe date pot fi transferate prin ele simultan. Un CDN ajută la îmbunătățirea performanței site-ului dvs. atunci când mai mulți utilizatori încearcă să îl acceseze simultan.
Având în vedere natura modului în care funcționează CDN, solicitările simultane către site-ul dvs. web vor fi probabil tratate de mai multe servere din mai multe zone din lume, în funcție de unde provin solicitările.
În acest fel, un anumit server nu este inundat cu toate solicitările de la utilizatori. Furnizorii CDN vor implementa, de asemenea, alte proceduri pentru a se asigura că fișierele dvs. se vor încărca eficient chiar și în mijlocul unui vârf de trafic.
3. Securitate mai bună (prin reducerea și protecția DDoS)
Un atac DDoS este atunci când serverul dvs. este inundat de solicitări nelegitime pentru site-ul dvs., cu scopul de a vă prăbuși site-ul sau de a provoca taxe crescute de lățime de bandă din cauza transferului excesiv.
Furnizorul dvs. CDN va oferi probabil mecanisme de detectare și atenuare a DDoS, care vă vor ajuta la îmbunătățirea performanței site-ului dvs. și a timpului de funcționare în timpul unui atac DDoS.
Dezavantajele utilizării unui CDN
Există totuși câteva dezavantaje ale utilizării unui CDN.
1. Cost: CDN-urile sunt de obicei plătite pe utilizare
Furnizorii CDN taxează adesea în funcție de cantitatea de conținut pe care îl transferați. Din acest motiv, costul dvs. lunar variază în funcție de lună .
Furnizorul dvs. actual de găzduire web poate include deja o anumită sumă de transfer lunar ca parte a pachetului dvs. actual de găzduire; prin urmare, va trebui să luați în considerare dacă costul suplimentar al CDN-ului este viabil pentru prezența online a afacerii dvs.
Rețineți că furnizorii „push CDN” taxează adesea și pentru spațiul de stocare (vezi mai jos).
Pentru a vă ajuta să înțelegeți cât vă va costa trecerea la cloud, luați în considerare următorul scenariu...
Să presupunem că dimensiunea site-ului dvs. este de 1 MB și furnizorul dvs. CDN percepe 0,085 USD/GB de transfer. Costul a 10.000 de utilizatori care accesează întregul site web ar fi: ((1/1024)×10.000) ÷ 0,085 = 114 cenți sau 1,14 USD pentru 10.000 de solicitări .
După cum puteți vedea, acesta nu este un cost scandalos.
Cu toate acestea, multe oferte CDN vă citesc fișierele din locația de stocare cu furnizorul dvs. actual de găzduire, ceea ce reprezintă un cost suplimentar. Acest server de origine ar putea fi un sistem de stocare a fișierelor, cum ar fi Amazon S3, sau ar putea fi furnizorul dvs. actual de găzduire.
Dacă site-ul dvs. web conține conținut dinamic, va trebui totuși să mențineți o soluție de găzduire care să poată procesa acele tipuri de fișiere.
Deoarece soluțiile CDN sunt adesea plătite pe utilizare, un atac DDoS ar putea fi nefavorabil din punct de vedere financiar - creșterea drastică a transferurilor de fișiere cauzată de acest tip de atac ar duce la un cost crescut pentru afacerea dvs.
Cu toate acestea, furnizorii CDN lucrează la detectarea și atenuarea acestor tipuri de atacuri, așa cum sa discutat mai devreme.
Notă: mulți dintre cei mai buni furnizori de găzduire web includ acum servicii CDN gratuite în planurile lor.
2. Este necesară o configurație suplimentară pentru a stoca în cache conținutul în schimbare
Rețineți că un CDN funcționează prin memorarea în cache a unor copii ale conținutului site-ului dvs. din întreaga lume.
Cu toate acestea, majoritatea site-urilor web includ un conținut care se modifică în funcție de utilizatorul specific care accesează site-ul web sau de alte criterii (mesaje de bun venit pentru un anumit utilizator, coșuri de cumpărături etc.).
Acest tip de conținut nu este la fel de banal de stocat în cache în întreaga lume, deoarece se actualizează constant la fiecare solicitare.
Fișierele de streaming sunt o altă formă de conținut care necesită o atenție specială pentru a fi utilizate în CDN. Vezi mai jos câteva detalii suplimentare.
Alte considerații CDN
Actualizează memoria cache a fișierelor atunci când actualizați fișierele
Când trebuie să actualizați unul dintre fișierele dvs. folosind un CDN de extragere, toate copiile stocate în cache din întreaga lume vor trebui să expire și ele, astfel încât să fie reîmprospătate la următoarea solicitare.
Pentru ca acest lucru să se întâmple, poate fi necesar fie să așteptați timpul de expirare implicit (care variază în funcție de furnizor), fie să forțați imediat invalidarea fișierelor din cache (prin ștergerea manuală a memoriei cache).
Deși actualizarea fișierelor dvs. poate implica acest pas suplimentar, fișierele statice ale site-ului dvs. web probabil că nu vor fi actualizate prea des.
Asigurați-vă suficient timp de expirare pentru fișierele accesate rar
Soluțiile Pull CDN nu conțin neapărat o copie a fișierelor dvs. pe fiecare server edge în orice moment (discutat mai detaliat mai jos). Dacă nu există deja o versiune în cache a unui fișier, fișierul trebuie extras de pe serverul de origine.
Aceasta este mai mult o problemă pentru fișierele mai mari, cum ar fi videoclipurile, deoarece impactul asupra performanței al încărcării acestor tipuri de fișiere de pe serverul de origine poate fi simțit destul de semnificativ.
Unele soluții la această problemă sunt creșterea timpului de expirare a fișierului stocat în cache (dacă este posibil), astfel încât fișierul să nu fie reîmprospătat la fel de des de pe serverul de origine sau stocarea fișierelor mari într-o soluție push CDN (vezi mai jos ).
Conținut static vs. dinamic
Site-urile web conțin două tipuri principale de date – conținut static și conținut dinamic.
Majoritatea conținutului pe care îl vedeți pe un site web (adică aspectul și senzația, imaginile, videoclipurile, fișierele CSS și JavaScript etc.) este de obicei conținut static. Conținutul static nu se modifică niciodată (cu excepția cazului în care reîncărcați fișierul sursă).
De exemplu, sigla companiei dvs. nu se va schimba în aspect, indiferent cine vă vizitează site-ul sau de câte ori reîncărcați pagina.
Conținutul dinamic se modifică în funcție de cine solicită datele sau de alte criterii.
De exemplu, când John se conectează la contul său bancar, își vede soldurile. Cu toate acestea, când David se conectează, soldurile nu sunt aceleași cu ceea ce vede Joe.
Ca un alt exemplu: după conectarea la tabloul de bord WordPress, veți vedea un mesaj precum „Howdy, John!”.
Conținutul care se modifică în funcție de utilizator sau de alte criterii este considerat conținut dinamic.
Cum gestionează un CDN conținutul static, dinamic și în flux?
În acest moment, ajungem la o întrebare importantă: „Ce fel de fișiere pot stoca pe CDN?”.
Deoarece fișierele statice tind să rămână aceleași în orice moment, indiferent de cine vă încarcă site-ul, ele sunt potrivite pentru a fi stocate în cache în întreaga lume prin intermediul unui CDN, deoarece fișierele sunt actualizate rar.
În ceea ce privește conținutul dinamic (adică un coș de cumpărături), de obicei nu există un singur fișier care să poată fi stocat în cache în întreaga lume, deoarece se schimbă adesea pentru fiecare utilizator sau pentru alte criterii.
Cu toate acestea, furnizorii CDN implementează soluții pentru a îmbunătăți eficiența încărcării conținutului dinamic, cum ar fi găsirea celei mai rapide rute între utilizator și serverul dvs. de găzduire.
Mulți furnizori de CDN au implementat, de asemenea, soluții pentru a transmite conținut media live și la cerere prin intermediul unui CDN.
Cum se configurează un CDN
Deci acum, probabil că vă gândiți: „Sunt convins că site-ul meu are nevoie de un CDN! Cum fac tranziția?”.
Răspunsul depinde de ce furnizor de găzduire utilizați și de ce tip de soluție CDN doriți.
Unii furnizori de găzduire web oferă o opțiune de a activa cu ușurință CDN-ul prin panoul lor de control. Alte setări necesită câțiva pași suplimentari.
Adăugați un strat CDN întregului site web
Această opțiune este una dintre cele mai simple de configurat pentru proprietarii de întreprinderi mici. Fiecare solicitare din partea utilizatorilor de a accesa conținutul site-ului dvs. web va fi mai întâi filtrată printr-un sistem gestionat de un furnizor CDN.
Conținutul static va fi încărcat de pe CDN, în timp ce conținutul dinamic va fi încărcat direct de pe serverul dvs. existent (sau o tehnică ar putea fi utilizată pentru a îmbunătăți timpul de încărcare a conținutului dinamic, așa cum sa discutat mai devreme).
Un pull CDN va fi implementat de fapt în spatele scenei pentru a distribui fișiere prin intermediul CDN-ului.
CloudFlare este una dintre aceste companii care oferă acest tip de soluție CDN. Unele companii, cum ar fi CloudFlare, vor oferi și alte îmbunătățiri pentru performanța site-ului dvs., dincolo de CDN.
Cum să o configurați
Pasul principal în configurarea acestui tip de sistem CDN este actualizarea înregistrărilor DNS ale site-ului dvs. web pentru a indica nivelul CDN. Stratul CDN va direcționa apoi cererile către serverul de origine, după cum este necesar.
În continuare va trebui să păstrați soluția de găzduire actuală pentru ca CDN-ul să extragă fișiere din ea.
Cum se configurează un CDN Pull
Specificați locația fișierelor dvs. pe serverul de origine pentru a le distribui pe CDN. CDN-ul va extrage apoi fișierele de pe serverul de origine, după cum este necesar.
De asemenea, va trebui fie să actualizați legăturile către fișierele de pe site-ul dvs. la punctul final al CDN-ului, fie să actualizați setările DNS pentru a indica CDN-ul.
Cum se configurează un Push CDN
Încărcați fișierele la furnizorul CDN. De asemenea, va trebui fie să actualizați legăturile către fișierele de pe site-ul dvs. la punctul final al CDN-ului, fie să actualizați setările DNS pentru a indica CDN-ul.
Ar trebui să părăsesc furnizorul meu de găzduire web?
Nu. Chiar și după achiziționarea unei soluții CDN, va trebui să rămâneți la un furnizor de găzduire web.
Rețineți că un CDN este folosit pentru a stoca în cache conținutul; dacă site-ul dvs. conține conținut dinamic, va trebui totuși să păstrați soluția de găzduire actuală pentru a procesa acel conținut.
Ce companii de hosting oferă un CDN?
Multe companii de găzduire oferă un CDN ca parte a planurilor lor de găzduire partajată în aceste zile:
- SiteGround (utilizați propriul CDN SiteGround la comandă)
- Bluehost (Cloudflare este preactivat)
- Kinsta (un plan Cloudflare plătit este inclus gratuit)
- WP Engine (un plan Cloudflare plătit este inclus gratuit)
- HostGator (Cloudflare este inclus numai în planul de afaceri)
- IONOS (Cloudflare este inclus doar în planul Expert)
- Cloudways (Cloudflare Enterprise poate fi adăugat pentru doar 4,99 USD pe lună)
Concluzie
CDN-urile sunt o soluție viabilă pentru a îmbunătăți eficiența site-ului dvs. prin reducerea timpului necesar pentru a transfera fișiere către utilizatori. Acest lucru servește la creșterea probabilității de fidelizare a clienților pe site-ul dvs. web și, eventual, chiar la îmbunătățirea clasării rezultatelor căutării.
CDN-urile vor reduce, de asemenea, încărcarea cererilor de fișiere în configurația curentă de găzduire, ceea ce poate ajuta la gestionarea volumelor mari de trafic.
Cu toate acestea, un CDN are adesea un cost crescut. Site-ul dvs. merită îmbunătățirea performanței pe care o poate oferi un CDN, dar beneficiile trebuie să depășească costurile potențiale și alte compromisuri.
Nu uitați că un CDN este doar unul dintre mulți pași pe care îi puteți face pentru a îmbunătăți performanța site-ului dvs. Alegerea unei gazde web rapidă este prima (și cea mai importantă).
Și există, de asemenea, multe alte lucruri pe care le puteți face pentru a crește viteza site-ului dvs. web (cum ar fi compresia imaginii) și pentru a îmbunătăți în mod special timpul de încărcare a site-ului dvs. WordPress!
Ați folosit un CDN pentru site-ul dvs. web? Spune-ne în comentariile de mai jos ce părere ai despre CDN-uri!