Z uporabo po­raz­de­li­tve obre­me­ni­tve se dostop do strežnika ena­ko­mer­no porazdeli med različne strojne vire prek tehnične rešitve, imenovane po­raz­de­lje­val­nik obre­me­ni­tve. To za­go­ta­vlja stabilne hitrosti dostopa, kar je ključnega pomena za pri­do­bi­va­nje po­ten­ci­al­nih strank in strank.

Kaj je po­raz­de­li­tev obre­me­ni­tve?

Po­raz­de­li­tev obre­me­ni­tve je še posebej pri­lju­blje­na v stre­žni­ški teh­no­lo­gi­ji in opisuje metodo, pri kateri se zahtevki v ozadju po­raz­de­li­jo med različne strežnike, ne da bi to upo­rab­ni­ki opazili. Naprava za po­raz­de­li­tev obre­me­ni­tve, ki se za to uporablja, je lahko v obliki strojne ali pro­gram­ske opreme. Eni domeni dodeli več stre­žni­kov, ne da bi pri tem prišlo do naslovnih kon­flik­tov, dostop do nje pa poteka prek javne domene.

Podrejeni spletni strežniki so po­i­me­no­va­ni z dodatki k domeni www1, www2, www3 itd. To omogoča po­raz­de­li­tev obre­me­ni­tve, tako da je spletna stran dostopna pod istim URL-jem, čeprav jo podpirajo več stre­žni­kov. S tem se prepreči pre­o­bre­me­ni­tev strežnika, saj se zunanja pov­pra­še­va­nja po­raz­de­li­jo med različne fizične stroje znotraj grozda. Upo­rab­ni­ki tega običajno ne opazijo, saj se po­raz­de­li­tev pov­pra­še­vanj izvaja na podlagi za­ple­te­nih al­go­rit­mov v ozadju.

Po­raz­de­li­tev obre­me­ni­tve ima lahko pomembno vlogo tudi zunaj spletnih stre­žni­kov, na primer pri ra­ču­nal­ni­kih z več pro­ce­sor­ji. V takih primerih po­raz­de­lje­val­nik obre­me­ni­tve poskrbi, da se zahteve ena­ko­mer­no po­raz­de­li­jo med različne pro­ce­sor­je, s čimer se poveča računska moč. Po­raz­de­lje­val­ni­ki obre­me­ni­tve so zelo iskani tudi pri uporabi pro­gram­ske opreme za kon­tej­ner­je, kot je Ku­ber­ne­tes. V tem primeru poskrbijo za učin­ko­vi­to po­raz­de­li­tev delovnih obre­me­ni­tev med različne pod-enote.

Kako deluje po­raz­de­li­tev obre­me­ni­tve?

Zahtevki za spletni strežnik, npr. v obliki ogledov strani, se najprej obdelajo na po­raz­de­lje­val­ni­ku obre­me­ni­tve. Ta nato prevzame po­raz­de­li­tev obre­me­ni­tve tako, da posreduje poskuse dostopa različnim stre­žni­kom. Po­raz­de­lje­val­nik obre­me­ni­tve je lahko izveden kot strojna ali pro­gram­ska oprema, vendar načelo ostaja enako: zahtevek prispe na po­raz­de­lje­val­nik obre­me­ni­tve in naprava ali pro­gram­ska oprema, odvisno od upo­ra­blje­ne metode, posreduje podatke ustre­zne­mu strežniku.

Tehnična podlaga je postopek DNS: upo­rab­ni­ki dostopajo do spletne strani izključno prek URL-ja. Ta se s pomočjo DNS pretvori v IP-naslov, ki nato usmerja promet na po­raz­de­lje­val­nik obre­me­ni­tve. V idealnem primeru upo­rab­ni­ki tega procesa sploh ne opazijo.

Image: Diagram of how load balancing works
A load balancer di­s­tri­bu­tes the load of client accesses over the internet or web to various servers.

Kakšne so prednosti urav­no­te­že­ne­ga po­raz­de­lje­va­nja obre­me­ni­tve?

Tri glavne prednosti pravilno na­me­šče­ne­ga po­raz­de­lje­val­ni­ka obre­me­ni­tve so naslednje:

  • Op­ti­mi­zi­ra­ni časi dostopa: Raz­po­re­di­tev prometa med več stre­žni­kov lahko skrajša čase dostopa, tudi če je hkrati veliko zahtevkov.
  • Večja odpornost proti napakam: Po­raz­de­lje­val­nik obre­me­ni­tve poveča odpornost proti napakam, saj se promet s počasnega strežnika samodejno preusmeri na druge strežnike v gruči. Če strežnik ni na voljo, ostane gostovana spletna stran dostopna.
  • Po­e­no­sta­vlje­no vzdr­že­va­nje sistema: Po­raz­de­li­tev obre­me­ni­tve v veliki meri olajša vzdr­že­va­nje stre­žni­ške­ga sistema. Kon­fi­gu­ra­ci­je in po­so­do­bi­tve je mogoče izvajati med de­lo­va­njem stre­žni­kov brez opazne izgube zmo­glji­vo­sti. Po­raz­de­lje­val­nik obre­me­ni­tve zazna stanja vzdr­že­va­nja in ustrezno pre­u­smer­ja zahteve.

Kakšne so različne vrste po­raz­de­li­tve obre­me­ni­tve?

Način raz­po­re­di­tve pri­ha­ja­jo­čih zahtevkov je odvisen od izbire algoritma. Med pri­lju­blje­ni­mi algoritmi za po­raz­de­li­tev obre­me­ni­tve so: Round Robin, Weighted Round Robin, Least Con­nec­ti­ons in Weighted Least Con­nec­ti­ons.

Round Robin

Round Robin opisuje postopek, pri katerem raz­po­re­dnik obre­me­ni­tve obdeluje pri­ha­ja­jo­če zahteve v vrsti in jih porazdeli med več stre­žni­kov. Vsaka nova zahteva se dodeli na­sle­dnje­mu strežniku v zaporedju. Tako se zahteve za dostop ena­ko­mer­no po­raz­de­li­jo po celotnem sklopu za raz­po­re­di­tev obre­me­ni­tve. Ne glede na to, kako nujna je zahteva ali kako velika je obre­me­ni­tev strežnika, Round Robin obravnava vse procese enako. Po­raz­de­lje­val­ni­ki obre­me­ni­tve, ki delujejo po načelu Round Robin, so še posebej primerni za okolja, v katerih imajo vse instance na voljo približno enake vire.

Tehtani krožni sistem

Slabosti kla­sič­ne­ga algoritma »round-robin« v he­te­ro­ge­nih stre­žni­ških grozdih je mogoče izravnati s tehtanim raz­po­re­ja­njem po načelu »round-robin«. Pri­ha­ja­jo­če zahteve se raz­po­re­di­jo ob upo­šte­va­nju sta­tič­ne­ga tehtanja po­sa­me­znih stre­žni­kov. To tehtanje vnaprej določi skrbnik.

Najz­mo­glji­vej­ši strežnik lahko na primer dobi vrednost »100«, medtem ko manj zmogljivi strežniki dobijo vrednost »50«. V takšni kon­fi­gu­ra­ci­ji bi strežnik z utežjo »100« od po­raz­de­lje­val­ni­ka obre­me­ni­tve prejel dve zahtevi na krog, strežnik z utežjo »50« pa le eno. Po­raz­de­lje­va­nje obre­me­ni­tve po metodi »Weighted Round Robin« je primerno uporabiti predvsem takrat, ko imajo strežniki v gruči na voljo različne vire.

Najmanj povezav

Oba algoritma »round-robin« pri serijski po­raz­de­li­tvi stre­žni­ških zahtevkov s strani po­raz­de­lje­val­ni­ka obre­me­ni­tve ne upo­šte­va­ta, koliko povezav morajo podrejeni strežniki vzdr­že­va­ti v določenem časovnem obdobju. To lahko povzroči, da se na enem strežniku v gruči nakopiči več povezav. Posledica tega je pre­o­bre­me­ni­tev strežnika, čeprav obdeluje manj povezav kot drugi. Algoritem najmanj povezav to pre­pre­ču­je. Zahteve razporedi na podlagi ob­sto­je­čih povezav vsakega strežnika– tisti z najmanj aktivnimi po­ve­za­va­mi prejme naslednjo zahtevo od po­raz­de­lje­val­ni­ka obre­me­ni­tve. Ta metoda po­raz­de­lje­va­nja obre­me­ni­tve se priporoča za homogene stre­žni­ške sklope, v katerih imajo vsi ra­ču­nal­ni­ki na voljo pri­mer­lji­ve vire.

Metoda naj­manj­še­ga števila povezav

Če ima stre­žni­ški klaster različne zmo­glji­vo­sti, je treba namesto algoritma z najmanj po­ve­za­va­mi uporabiti po­raz­de­li­tev obre­me­ni­tve, ki temelji na tehtani po­raz­de­li­tvi ob­sto­je­čih povezav. Pri tem se upo­šte­va­ta tako število aktivnih povezav na strežniku kot tudi utež, ki jo določi skrbnik. To za­go­ta­vlja urav­no­te­že­no po­raz­de­li­tev obre­me­ni­tve znotraj stre­žni­ške­ga klastra. Po­raz­de­lje­val­nik obre­me­ni­tve nove zahteve samodejno dodeli tistim stre­žni­kom, pri katerih razmerje med aktivnimi po­ve­za­va­mi in njihovo utežjo kaže na najmanjšo trenutno obre­me­ni­tev.

Kakšne težave se lahko pojavijo pri uporabi po­raz­de­li­tve obre­me­ni­tve?

Zlasti v sektorju e-trgovine se pri po­raz­de­lje­va­nju obre­me­ni­tve pogosto po­ja­vlja­jo težave. Tukaj je primer: obi­sko­val­ci spletne strani v košarico dodajo izdelke, ki jih želijo kupiti. Ti izdelki ostanejo shranjeni ves čas trajanja seje, ne glede na to, na katero stran spletnega trga se upo­rab­ni­ki pre­u­sme­ri­jo. Običajni po­raz­de­lje­val­nik obre­me­ni­tve bi zahteve raz­po­re­dil med različne strežnike. To pomeni, da bi se vsebina košarice izgubila.

Za rešitev tega problema sta možna dva pristopa. Prvič, po­raz­de­lje­val­nik obre­me­ni­tve se lahko odzove na IP-naslov upo­rab­ni­ka. Tako se na primer zahtevki z istega IP-naslova vedno usmerijo na isti strežnik. Druga možnost bi bila, da se iz samega zahtevka prebere iden­ti­fi­ka­tor seje, na podlagi katerega se določi, na kateri strežnik je treba zahtevek poslati.

Zakaj so po­raz­de­lje­val­ni­ki obre­me­ni­tve tako pomembni?

Če zaslužite prek interneta, si vaše podjetje ne more pri­vo­šči­ti izpada strežnika. Če upo­ra­blja­te le en strežnik in ta zaradi pre­o­bre­me­ni­tve odpove, vaša spletna stran ni več dostopna po­ten­ci­al­nim strankam. To povzroči več težav: med drugim med pre­o­bre­me­ni­tvi­jo ne morete ustvar­ja­ti prihodkov. Storitev ni mogoče re­zer­vi­ra­ti, nakupov pa ni mogoče opraviti. Poleg tega se zmanjša zaupanje (po­ten­ci­al­nih) strank. Še posebej slabo je za upo­rab­ni­ke, ki se med postopkom naročanja soočijo s pre­o­bre­me­ni­tvi­jo strežnika. Pogosto vlada velika ne­go­to­vost, prizadeti pa ne vedo, ali je naročilo dejansko prispelo in bilo za­be­le­že­no v sistemu.

Tudi če storitev ne ponujate ne­po­sre­dno prek interneta, mora biti vaša spletna stran vedno dostopna. Spletna stran je eden od glavnih kanalov za pri­do­bi­va­nje in­for­ma­cij. Če po­ten­ci­al­ni kupci na spletu iščejo podatke o vašem podjetju in ne morejo dostopati do vaše spletne strani, se bodo verjetno obrnili k vaši kon­ku­ren­ci. Takšna tveganja lahko zmanjšate z uporabo naprave za po­raz­de­li­tev obre­me­ni­tve.

Kako v svojem podjetju uvesti po­raz­de­li­tev obre­me­ni­tve

Po­raz­de­li­tev obre­me­ni­tve je mogoče izvesti z uporabo tako strojne kot pro­gram­ske opreme na vir­tu­al­nem strežniku. Številni ponudniki nudijo pro­fe­si­o­nal­ne celovite pakete, bodisi v obliki storitve »in­fra­struk­tu­ra kot storitev« (IaaS) bodisi kot omrežno kom­po­nen­to za vašo lastno IT-in­fra­struk­tu­ro.

Ker je nakup la­stni­ških naprav za po­raz­de­li­tev obre­me­ni­tve običajno povezan z visokimi stroški, se manjša podjetja pogosto odločajo za od­pr­to­ko­dne rešitve, kot je NGINX. Ta ponuja stro­škov­no učinkovit način za za­go­ta­vlja­nje visoke raz­po­lo­žlji­vo­sti spletne strani vašega podjetja ali drugih spletnih projektov prek učin­ko­vi­te po­raz­de­li­tve obre­me­ni­tve znotraj omrežja stre­žni­kov. V sektorju spletnega go­sto­va­nja se po­raz­de­li­tev obre­me­ni­tve pogosto ponuja tudi kot dodatna funkcija za strežnike v oblaku.

Go to Main Menu