![Search icon](https://hackernoon.imgix.net/search-new.png?w=19&h=19)
Kad god vaš sustav raste, promet se povećava, sve više i više korisnika koristi vaše proizvode, poslužitelji počnu reagirati sporije, zastoji tjeraju vaše poslovanje na probleme, tada počinjete razmišljati o skaliranju.
Postoje dvije primarne strategije skaliranja - okomita i vodoravna.
Vertikalno skaliranje ima za cilj povećati snagu sustava dodavanjem obično više CPU-a i RAM-a vašim poslužiteljima.
Nasuprot tome, horizontalno skaliranje usmjereno je na dupliciranje (ili kloniranje) vaših poslužitelja u skupu resursa.
Više o ovim:
Okomito skaliranje najbolja je opcija za sustav s malim prometom jer je to najpristupačniji pristup za rukovanje rastom bez uvođenja dodatne složenosti. Ne morate brinuti o implementaciji strategija za grupu resursa, elastičnosti skupa resursa, statusu vašeg poslužitelja bez statusa, distribuiranoj predmemorij i tako dalje.
Međutim, vertikalno skaliranje ima ozbiljne nedostatke
Horizontalno skaliranje eliminira ove probleme kloniranjem vaših aplikacijskih poslužitelja i ugradnjom komponente kao što je Load balancer .
Balansiranje opterećenja distribuira promet na vašim poslužiteljima pomoću specifičnih algoritama kao što su:
Ipak, ima nekoliko nedostataka:
Da bi dva uređaja na internetu međusobno komunicirala, temeljni sustavi moraju slijediti određene protokole. Svi su čuli za OSI model, koji opisuje sedam slojeva koje računalni sustavi koriste za komunikaciju preko mreže. Iako se moderni internet temelji na jednostavnijem modelu skupa protokola TCP/IP, OSI model je naširoko korišten jer pomaže vizualizirati i komunicirati kako mreže funkcioniraju te pomaže u izolaciji i rješavanju mrežnih problema.
Većina industrijskih rješenja za uravnoteženje opterećenja koristi termine L4 i L7 gdje se L4 odnosi na transportni sloj u OSI modelu, a L7 na aplikacijski sloj.
L4 balanser opterećenja još uvijek je L2/L3 budući da koristi podatke s najnižih slojeva kao što su IP adresa i broj priključka.
Sigurniji je i učinkovitiji jer se sadržaj podataka ne uzima u obzir pri donošenju odluka o usmjeravanju
Ista TCP veza održava se između klijenta i poslužitelja, što pomaže u sprječavanju prekoračenja ograničenja dostupnih TCP veza na balanseru opterećenja
S druge strane, L7 load balancer radi na razini aplikacije u OSI modelu
Pametne odluke mogu se donijeti na temelju URL putanje, zaglavlja, sadržaja
Predmemoriranje
Balansiranje opterećenja vitalna je komponenta kada se horizontalno skaliranje primjenjuje za rukovanje sustavima s velikim prometom. Postoje dvije glavne vrste balansera opterećenja L4 i L7.
L4 balanser opterećenja mnogo je sigurniji i učinkovitiji zbog ograničenja donošenja pametnih odluka
L7 balanser opterećenja radi na način da pruža inteligentne odluke o usmjeravanju zbog cijene učinkovitosti i sigurnosti
Odabir odgovarajućeg tipa ovisi o zahtjevima sustava i treba ga pažljivo razmotriti uz razumnu ravnotežu primjene sigurnosnih načela i uklanjanja uskih grla u izvedbi.
Također objavljeno ovdje.