![Search icon](https://hackernoon.imgix.net/search-new.png?w=19&h=19)
Närhelst ditt system växer, trafiken ökar, fler och fler användare använder dina produkter, servrar börjar svara långsammare, driftstopp tvingar ditt företag att lida och sedan börjar du tänka på skalning.
Det finns två primära strategier för skalning - vertikal och horisontell.
Vertikal skalning avser att öka systemets kraft genom att vanligtvis lägga till mer CPU och RAM till dina servrar.
Däremot fokuserar horisontell skalning på att duplicera (eller klona) dina servrar i resurspoolen.
Mer om dessa:
Vertikal skalning är det bästa alternativet för ett system med låg trafik eftersom det är den mest tillgängliga metoden för att hantera tillväxt utan att införa ytterligare komplexitet. Du behöver inte bry dig om att distribuera strategier för en grupp av resurser, resurspoolens elasticitet, din servers tillståndslöshet, den distribuerade cachen och så vidare.
Dock har vertikal skalning allvarliga nackdelar
Horisontell skalning eliminerar dessa problem genom att klona dina applikationsservrar och bädda in en komponent som en lastbalanserare .
En lastbalanserare distribuerar trafik på dina servrar med hjälp av specifika algoritmer som:
Ändå har det flera nackdelar:
För att två enheter på internet ska kunna kommunicera med varandra måste underliggande system följa specifika protokoll. Alla hörde talas om OSI-modellen, som beskriver sju lager som datorsystem använder för att kommunicera över ett nätverk. Även om det moderna internet är baserat på en enklare TCP/IP-protokollstackmodell, används OSI-modellen flitigt, eftersom den hjälper till att visualisera och kommunicera hur nätverk fungerar och hjälper till att isolera och felsöka nätverksproblem.
De flesta industrilastbalanseringslösningar använder termerna L4 och L7 där L4 hänvisar till transportskiktet i OSI-modellen och L7 hänvisar till applikationsskiktet.
L4-lastbalanseraren är fortfarande L2/L3 eftersom den använder data från de nedre lagren som IP-adress och portnummer.
Det är säkrare och mer prestanda eftersom datainnehåll inte tas med för att fatta routingbeslut
Samma TCP-anslutning finns mellan klient och server, vilket hjälper till att förhindra att gränsen för tillgängliga TCP-anslutningar överskrids på en lastbalanserare
Å andra sidan fungerar L7-lastbalanseraren på applikationsnivå i OSI-modellen
Smarta beslut kan fattas baserat på URL-sökväg, rubriker, innehåll
Cachning
Lastbalanserare är en viktig komponent när horisontell skalning tillämpas för att hantera högtrafikerade system. Det finns två huvudtyper av lastbalanserare L4 och L7.
L4 load balancer är mycket säkrare och mer presterande på grund av begränsningarna för att fatta smarta beslut
L7 lastbalanserare fungerar på ett sätt som ger intelligenta routingbeslut på grund av kostnaden för effektivitet och säkerhet
Att välja lämplig typ beror på systemkraven och bör övervägas noggrant med en rimlig balans mellan tillämpning av säkerhetsprinciper och eliminering av prestandaflaskhalsar.
Även publicerad här.