AWS för backendutvecklare (EC2, S3, RDS, Lambda) · Lektion

Autoskalning och lastbalansering

Gör er EC2-baserade backend motståndskraftig och elastisk genom att kombinera Auto Scaling Groups med en Application Load Balancer för att hantera varierande trafik.

Lektion 4 av 413 steg

Autoskalning och lastbalansering är en gratis lektion i AWS för backendutvecklare (EC2, S3, RDS, Lambda) på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för AWS för backendutvecklare (EC2, S3, RDS, Lambda), och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i AWS för backendutvecklare (EC2, S3, RDS, Lambda) innehåller totalt 4 lektioner.

Från en server till många

En EC2-instans är en single point of failure. Backend-system kör en Auto Scaling Group med instanser bakom en load balancer som fördelar förfrågningar mellan dem.

Launch Template

En ASG behöver ett recept för instanserna som den startar. En launch template definierar AMI, instanstyp och startkonfiguration.

En Auto Scaling Groups uppbyggnad

En Auto Scaling Group innehåller ett minimiantal, ett önskat antal och ett maximiantal instanser. Den ser till att det önskade antalet körs och ersätter själv instanser som inte är friska.

Hälsokontroller

ASG kör health checks: när en instans slutar fungera avslutas den och en ersättare startas, så att flottan behåller önskad storlek.

Varför en load balancer?

En load balancer ger klienterna en stabil slutpunkt samtidigt som förfrågningar fördelas mellan friska instanser. ALB fungerar på HTTP-nivå och dirigerar efter sökväg eller värd.

Lyssnare och målgrupper

En ALB består av två delar: en listener övervakar en port (till exempel 80) efter anslutningar, och en target group är den pool av instanser som den vidarebefordrar till.

Ansluta ASG till ALB

ASG registrerar automatiskt sina instanser i target group, så att nya instanser börjar ta emot trafik och avslutade instanser tas bort — utan manuell konfigurering.

Skalningsprinciper

En scaling policy justerar det önskade antalet utifrån ett mätvärde. Target tracking är enklast: håll den genomsnittliga CPU-användningen nära exempelvis 50 %, så lägger AWS till eller tar bort instanser för att upprätthålla nivån.

En Python-simulering av skalning

Det här kodexemplet modellerar target tracking — den jämför aktuell CPU-användning med målet för att beräkna det nya antalet instanser.

current_cpu = 80
target_cpu = 50
current_count = 4

desired = round(current_count * current_cpu / target_cpu)
print('Scale to', desired, 'instances')

Multi-AZ för hög tillgänglighet

Fördela ASG över flera Availability Zones. Om en AZ slutar fungera fortsätter instanserna i de andra att hantera trafik, och ALB slutar dirigera trafik till den felande zonen.

Kostnader och cooldown-perioder

Att skala ut kostar pengar, och snabba upp- och nedskalningar, så kallad thrashing, slösar med resurserna. En cooldown pausar ytterligare skalning så att flottan hinner stabiliseras innan den reagerar igen.

Snabbtest

En trafikökning drabbar er flotta — vad gör target tracking, och hur ser ALB till att svaren fortsätter att levereras?

Sammanfattning: Elastiska och motståndskraftiga backend-system

Sammanfattning: launch templates definierar instanser, Auto Scaling Groups reparerar sig själva kring minimiantal, önskat antal och maximiantal, och en ALB med target tracking och Multi-AZ ger elasticitet och motståndskraft.

Gratis att börja

Lär dig AWS för backendutvecklare (EC2, S3, RDS, Lambda) med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Autoskalning och lastbalansering” gratis?

Ja – hela texten till ”Autoskalning och lastbalansering” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i AWS för backendutvecklare (EC2, S3, RDS, Lambda), kan Ni uppgradera till CoddyKit PRO. Kursen i AWS för backendutvecklare (EC2, S3, RDS, Lambda) innehåller totalt 4 lektioner.

Vad lär jag mig i ”Autoskalning och lastbalansering”?

Gör er EC2-baserade backend motståndskraftig och elastisk genom att kombinera Auto Scaling Groups med en Application Load Balancer för att hantera varierande trafik. Ni övar på AWS för backendutvecklare (EC2, S3, RDS, Lambda) med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig AWS för backendutvecklare (EC2, S3, RDS, Lambda)?

Du behöver inga förkunskaper. Utbildningen i AWS för backendutvecklare (EC2, S3, RDS, Lambda) på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.

Hur lång tid tar lektionen ”Autoskalning och lastbalansering”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här AWS för backendutvecklare (EC2, S3, RDS, Lambda)-lektionen?

Ja. Varje AWS för backendutvecklare (EC2, S3, RDS, Lambda)-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Introduktion till AWS för backendutveckling
  2. Starta er första EC2-instans
  3. Anslutning och grundläggande EC2-hantering
  4. Autoskalning och lastbalansering
← Tillbaka till AWS för backendutvecklare (EC2, S3, RDS, Lambda)