Ne paslaptis, kad svetainės užkrovimo greitis yra labai svarbus. Tyrimų duomenimis, lankytojas nelauks, kol bus atverta svetainė, jei tai truks ilgiau nei 3 sekundes, ir paliks jūsų svetainę. Spartus svetainės atvaizdavimas taip pat yra ir vienas iš veiksnių, lemiančių puslapio poziciją Google paieškoje.
Dažniausiai svetainės atvėrimo greitis priklauso nuo pačio puslapio programinio kodo. Svetainę prižiūrintis asmuo turėtų užtikrinti, kad jos programinis kodas būtų optimizuotas, naudojama nauja programinės įrangos versija, o pati svetainė neperkrauta nereikalingais įskiepiais ir neoptimizuotais vaizdais. Taip pat be svetainės programinio kodo mažesnį, tačiau taip pat svarbų vaidmenį atlieka hostingas, kuriame svetainė talpinama. Puiki analogija galėtų būti greitas automobilis ir kelias. Automobilio greitis atitinka jūsų svetainės programinį kodą, o kelias – hostingą. Tam, kad greitas automobilis galėtų pasiekti maksimalų greitį, reikalingas puikus kelias. Lygiai taip pat ir su svetaine – jei ji yra pilnai optimizuota, labai svarbu užtikrinti, kad ji būtų talpinama tinkamame serveryje, kuris atitiktų jos galios poreikius.
Šiame straipsnyje aptarsime, į ką svarbu atsižvelgti renkantis serverį svetainės talpinimui, kad jis turėtų teigiamą įtaką svetainės greičiui.
Kietojo disko tipas
Yra dviejų tipų standieji diskai – HDD ir SSD.
Serveryje, kuriame naudojami HDD diskai, informacija saugoma magnetiniuose diskuose. Kai reikia atkurti tam tikrą failą (pvz., svetainės vaizdų failus), diskas fiziškai sukasi, kol failas surandamas ir pasiekiamas. Tai gali užtrukti kelias milisekundes, tačiau dėl vienu metu gaunamo labai didelio kiekio failų ar vykstančių diskui imlių procesų gali sulėtėti svetainės darbas.
SSD saugyklose naudojamos atminties mikroschemos – „flash“ atmintis. Tai leidžia žymiai greičiau įrašyti ir atkurti duomenis.
Duomenų nuskaitymo arba įrašymo greitį nusakantis rodiklis IOPS (angl. input/output operations per second) SSD diskuose yra aukštesnis. Palyginimui – įprastinių HDD diskų IOPS svyruoja tarp 80-180, o tuo tarpu SSD diskuose IOPS gali siekti iki 75 000.
SSD taip pat suteikia greitesnę prieigą prie failų. Tai ypač aktualu dinaminėms svetainėms, kurios įrašo ir skaito labai didelį kiekį duomenų, pvz. didelėms el. parduotuvėms, skelbimų ar žiniasklaidos svetainėms, kurių atvaizdavimui reikia apdoroti labai didelį kiekį failų.
RAM atmintis
RAM yra trumpalaikė atmintis, kurioje laikinai saugomi duomenys. Naudojant RAM, duomenų nereikia kiekvieną kartą skaityti iš disko ir jie greičiau perduodami procesoriui.
RAM atmintis gali būti naudojama svetainių informacijos kešavimui, pasitelkiant įvairias kešavimo sistemas ar įskiepius (pvz. „Redis“, „Memcache“). Tai leidžia paspartinti puslapio užkrovimo laiką.
Pakankamas RAM kiekis leidžia sklandžiau vykdyti sudėtingas programinio kodo užduotis, kai svetainėje vienu metu vykdomi keli procesai.
RAM resursas taip pat reikalingas atliekant duomenų importavimo veiksmus, o tai ypač aktualu didelėms el. parduotuvėms, kurioms nuolat tenka atlikti duomenų importavimą, pvz. iš sandėlio ar tiekėjo sistemos.
CPU
Centrinis procesorius (CPU) iš esmės yra serverio smegenys. Jame vykdomos pagrindinės loginės, aritmetinės, įvesties ir išvesties operacijos, kurios vėliau komandų pavidalu perduodamos programinei įrangai.
Procesoriaus pagrindinis vaidmuo yra palengvinti ryšį tarp įvairių komponentų, atlikti skaičiavimus, būtinus programinei įrangai palaikyti.
Šiais laikais įprasta, kad CPU skaidomas į kelis branduolius, kas leidžia efektyviau veikti sistemoms. Naudojant kelis branduolius, procesus galima vykdyti antrajame branduolyje, jei pirmasis yra užimtas. Visgi nereikėtų tikėtis, kad keturi branduoliai bus keturis kartus greitesni arba efektyvesni, nei vienas branduolys. Efektyvumas bus juntamas, tačiau ne keturis kartus.
Statinių svetainių veikimui spartus procesorius nereikalingas, nes jose nėra programinio kodo, kurį reikėtų interpretuoti ar vykdyti. Jei svetainė sukurta nenaudojant turinio valdymo sistemos arba karkaso, o pats svetainės turinys yra statinis, tuomet nebus tiek svarbu, kokio galingumo procesorius bus pasirinktame serveryje.
Pralaidumas
Pralaidumas yra maksimalaus duomenų, kuriuos galima perduoti per tam tikrą laiką, matas, paprastai matuojamas gigabaitais arba megabaitais per sekundę.
Dažna paralelė pralaidumui apibūdinti yra vamzdis. Kuo platesnis vamzdžio skersmuo, tuo daugiau vandens vienu metu gali tekėti juo. Pralaidumas veikia tuo pačiu principu. Kuo didesnė ryšio jungties talpa, tuo daugiau duomenų gali tekėti per sekundę.
Didelis pralaidumas leidžia užtikrinti, kad piko valandomis puslapis bus atvertas kaip galima greičiau. Analogija galėtų būti platus, kelių juostų greitkelis ir siauras vienos juostos kelias. Piko valandomis plataus, kelių juostų kelio pajėgumai leis geriau užtikrinti greitą eismo judėjimą. Analogiškai didesnis pralaidumas piko valandomis užtikrina pakankamą duomenų perdavimo pajėgumą.
Hostingo tipas
Bendro naudojimo serveriai
Bendro naudojimo serveryje įkurtuose talpinimo planuose yra talpinama nuo keliolikos iki kelių dešimčių svetainių. Visos svetainės dalinasi bendrais serveriui išskirtais resursais ir gali daryti įtaką serverio apkrovai. Dažnai tokio tipo serveriuose įkurti planai neturi individualiai jiems išskirtų atskirų CPU, RAM ar panašių resursų.
Šiuose serveriuose įkurtų planų kainos yra mažesnės, todėl jie tobulai tinka nedidelėms ar vidutinėms svetainėms. Tai pat šiuos serverius pravartu rinktis tik pradėjus verslą, kuomet puslapis dar nesulaukia didelio lankytojų srauto ir nėra žinoma, ar tikrai bus reikalingi dedikuoti resursai.
Augant puslapio žinomumui ir pastebėjus, kad bendro naudojimo serverio resursai yra nepakankami, verta svetainės veiklą perkelti į privačius serverius.
Privatūs serveriai
Privačių serverių tipui priklauso dedikuoti (VDS) ir virtualūs privatūs serveriai (VPS). Lyginant su bendro naudojimo serveriais, privatūs serveriai yra brangesni ir reikalauja specialios priežiūros, tačiau yra gerokai galingesni, nes viso virtualaus serverio resursai yra suteikiami vienam klientui ir nėra proporcingai padalinti tarp kitų serverio naudotojų. Daugiau galios ir atminties leis jūsų serveriui greičiau vykdyti užklausas ir dėl to svetainė bus atveriama greičiau. Šio tipo serveriai yra idealiausias sprendimas resursams imlių ir daug lankytojų sulaukiančių svetainių ar projektų talpinimui.
Serverio vieta
Lankytojui bandant atidaryti svetainę, užklausa iš jo naršyklės yra siunčiama į serverį ir, gavus atsakymą, puslapio informacija grąžinama bei atvaizduojama naršyklėje. Jei svetainę dažniausiai aplanko Lietuvoje esantys lankytojai, o serveris yra duomenų centre Amerikoje, užklausos išsiuntimas per pusę pasaulio ir atsakymo gavimas užtrunka ilgiau, nei tą pačią svetainę talpinant serveryje, esančiame Lietuvoje. Šiuo atžvilgiu geriausia, kad serveris, kuriame patalpinta svetainė, ir potencialūs puslapio lankytojai būtų toje pačioje šalyje.
CDN (Content Delivery Network – Turinio pristatymo tinklas)
Globaliame pasaulyje gali būti sunku apsiriboti tik viena šalimi, iš kurios lankytojų srautas laukiamas. Jei tikimasi sulaukti lankytojų srauto iš viso pasaulio, pravartu pasinaudoti CDN paslauga. CDN yra geografiškai paskirstytų serverių sistema, kuri padeda užtikrinti greitą internetinio puslapio atidarymą, sumažinant fizinį atstumą tarp serverio ir puslapio lankytojo.
Naudojant CDN, svetainė per geografiškai išdėstytus duomenų centrus atidaroma iš artimiausio puslapio lankytojui esančio vietos taško (POP).
Yra nemažai CDN paslaugos tiekėjų, pavyzdžiui „Cloudflare“, „KeyCDN“ ir „StackPath“. Kai kurie iš jų, pvz. „Cloudflare“, turi ir nemokamus planus.
Išvados
Serverio pasirinkimas turi priklausyti nuo planuojamos talpinti svetainės tipo. Statinei, nedidelei svetainei pilnai turėtų pakakti bendro naudojimo serveriuose įkurto talpinimo plano. Taip pat svarbu atsižvelgti, kad serveris būtų įkurtas duomenų centre, esančiame kuo arčiau svetainės lankytojų. Nesant tokiai galimybei, svetainė sparčiau veiks iš bet kurio pasaulio taško, jei bus naudojama CDN paslauga.
Didelėms, dinaminėms svetainėms, kuriose yra daug besikeičiančios informacijos arba kuriose nuolat reikia kešuoti didelius kiekius informacijos, reikėtų rinktis serverius su išskirtu pakankamu RAM kiekiu.
Svetainę, kurioje vykdoma daug įrašymo ir skaitymo procesų, naudinga talpinti serveryje su SSD diskais.