Hvad er forskellen mellem Load Balancing og Content Switching

6. april 2022 | Teknisk

Er der forskel på konceptet load balancing og content switching i webapplikationer? Load balancers distribuerer anmodninger på tværs af flere servere for at håndtere mere trafik, end én server kunne håndtere alene.

Det giver dig mulighed for at skalere dine webapplikationer uden at tilføje yderligere hardware eller software. Derudover giver load balancing dig mulighed for at bruge færre ressourcer, end der ellers ville være behov for, hvis alle indgående anmodninger blev håndteret af kun én server.

Indholdsskift henviser derimod til at omdirigere brugere fra én side til en anden, når den nuværende server ikke kan håndtere deres anmodning. I denne artikel vil vi dække forskellen mellem de to koncepter.

Oversigt over belastningsbalancering

En load balancer fordeler indgående anmodninger mellem flere servere. Den bestemmer ikke, hvilken server der skal besvare en bestemt anmodning. I stedet videresender den blot anmodningen til en tilgængelig server. En load balancer bruger typisk round-robin-planlægning, hvor hver gang en ny anmodning kommer ind, sender den anmodningen til den næste tilgængelige server.

Load balancereren skal vide, hvilken IP-adresse anmodningen skal sendes til for at opnå denne funktionalitet. Derfor skal load balancereren have adgang til konfigurationsoplysninger.

For eksempel kan en load balancer have brug for at kende navnet på den maskine, der er vært for webapplikationen, dens IP-adresse, portnummer osv.

Load balancers tilbyder også andre funktioner såsom SSL-terminering, caching, overvågning, failover osv. Disse funktioner beskrives detaljeret senere i artiklen.

Load Balancing Typer

Der findes tre typer load balancing i dag: Round Robin (RR), Weighted Random (WR) og Least Connections (LC). Round Robin (RR):

Denne type load balancing fungerer som et telefonsystem med drejeskive. Når et opkald kommer ind i switchen, går det gennem forbindelser, indtil det når destinationen. Hver forbindelse har en bestemt vægt tilknyttet.

Hvis der ikke er nogen ledige forbindelser tilbage, afbrydes opkaldet. Med RR varierer vægtningen, der tildeles de forskellige forbindelser, over tid. Som et resultat fordeles opkaldene jævnt på tværs af de tilgængelige servere.

Vægtet tilfældig (WR): Tildeler en fast procentdel af den samlede båndbredde til hver server. Så hvis der er 10 servere, og 5% af den samlede båndbredde er allokeret, får hver server 5% af den samlede kapacitet. Det betyder, at den første server får 50% af kapaciteten, den anden server får 25% osv. Mindst antal forbindelser (LC):

Med LC sender load balancer kun anmodninger til den mindst travle server. Hvis alle servere er lige travle, vil load balancer altid vælge den mindst belastede server.

Den største fordel ved WR er, at det giver bedre ydeevne, fordi det ikke kræver nogen særlige indstillinger på serverne. Det kræver dog flere hukommelses- og CPU-cyklusser end RR. Den største ulempe ved WR er, at det kan forårsage problemer, hvis arbejdsbelastningen på serverne ændrer sig markant.

Oversigt over indholdsskift

Når en bruger anmoder om en specifik URL, forventer han/hun at se indhold på den placering. Men nogle gange, på grund af netværksproblemer, når anmodningen muligvis ikke frem til den server, der er vært for den anmodede ressource.

I disse tilfælde modtager brugeren en besked om, at siden ikke kan findes, eller at serveren midlertidigt er utilgængelig. Dette kaldes fejlen "404 Not Found". For at undgå dette problem kan du bruge en teknik kaldet "Content switching". Med indholdsskift omdirigerer load balancer klientens anmodning til en anden server, der er vært for den samme ressource, når en anmodning om en bestemt ressource mislykkes. På denne måde ser brugeren aldrig 404-fejl.

Din load balancer skal forstå, hvordan man udfører omdirigering for at implementere indholdsskift. Den gør det ved hjælp af en HTTP-svarkode kaldet 302. Et 302-svar fortæller browseren, at den skal foretage en ny anmodning til en anden placering.

Derudover skal load balancer'en kunne bestemme, hvilke ressourcer der hostes på hvilke servere. For at gøre dette bruger den en funktion kaldet DNS Name Server (DNS NS). DNS NS oversætter værtsnavne til IP-adresser. Load balancer'en skal have adgang til oplysninger om webstedets DNS-konfiguration for at kunne skifte indhold. For eksempel skal den vide, hvor DNS-navneserveren er placeret, og dens IP-adresse.

Det gøres ved at konfigurere load balancer som en DNS-videresendelse. Du konfigurerer DNS-videresendelsen til at sende forespørgsler til den relevante DNS-navneserver.

Når DNS-videresendelsesprogrammet ved, hvor DNS-navneserveren befinder sig, videresender det forespørgslen til serveren. Efter at have modtaget svaret fra DNS-navneserveren, returnerer load balancer IP-adressen på den server, der er vært for den anmodede ressource.

Det er vigtigt at bemærke, at virtuelle servere ikke understøtter indholdsskift. De returnerer en statuskode 404.

En virtuel server er en logisk repræsentation af én fysisk server. Hver virtuel server har sin egen IP-adresse og portnummer. Virtuelle servere bruges til at give fejltolerance. Når en virtuel server går ned, omdirigeres trafikken, der ledes til den, til en anden fysisk server.

Forskellen mellem load balancing og indholdsskift

I Load Balancing går alle anmodninger gennem den samme sti. Så der vil altid kun være én kopi af dataene i cachen. Hvis den første server bliver overbelastet, får andre servere mindre arbejde. I Content switching går hver anmodning til en separat sti. Så der vil være flere kopier af dataene i cachen. Og hvis den første server bliver overbelastet, får andre servere mere arbejde at udføre.

I Load Balancing holder load balancer styr på hver servers tilstand. Hvis en server holder op med at svare, advarer den load balancer. Load balancer fjerner derefter serveren fra tjenesten. I Content switching holder load balancers styr på servernes tilstand. Men de sender ikke advarsler til klienterne. I stedet omdirigerer de anmodningerne til andre servere.

Hvis en server går ned i Load Balancing, sender load balancer en besked til klienten om, at deres anmodning mislykkedes. Hvis en server går ned i Content Switching, fortæller load balancer ikke klienten noget.

I Load Balancing, når en server starter op igen, forsøger load balancer at finde ud af, hvorfor den gik ned. Derefter kan den beslutte, om den skal sættes online igen. I Content Switching antager load balancers, at alt er fint, når en server starter op igen. Der er ingen grund til at kontrollere, hvorfor den startede op igen. Den begynder bare at sende nye anmodninger til den.

I Load Balancing kan du indstille, hvor mange gange klienten får en fejl, før den opgiver at forsøge at nå dit websted. I indholdsskift kan du ikke kontrollere, hvor længe klienten venter, før den opgiver at nå dit websted.

I load balancing kan en enkelt serverfejl forårsage problemer med nogle applikationer. Et godt eksempel ville være en indkøbskurvsapplikation. Hvis en bruger placerer en vare i kurven, men derefter forlader den uden at betale, er ordren ikke gennemført.
Ved indholdsskift vil en enkelt serverfejl ikke påvirke nogen applikationer.

Konklusion

Load Balancing er bedre end Content Switching, fordi det har færre begrænsninger og giver bedre ydeevne. De overordnede programmer er meget ens, bortset fra at load balancer håndterer alle forbindelser, mens content switcher kun håndterer forbindelser, der kommer fra den samme IP-adresse. Begge har dog fordele og ulemper. Det er vigtigt at vide, hvad de er, før du bruger dem.

TAK TIL:

Geri Mileva

Relaterede blogs

Skrevet af reluser | 13. august 2025
Juli 2025 – Microsoft har udsendt en hastesikkerhedsadvarsel vedrørende aktiv udnyttelse af fire sårbarheder, der påvirker lokale SharePoint-servere: CVE-2025-49706 – Spoofing CVE-2025-49704 – Fjernudførelse af kode CVE-2025-53770 –…
811 LikesComments Off om nye SharePoint-sårbarheder: Hvordan RELIANOID Hjælper dig med at forblive beskyttet
Indsendt af genbruger | 22. januar 2025
Ubuntu 22.04 LTS-brugere bør handle øjeblikkeligt for at sikre deres systemer, efter at Canonical har udstedt en kritisk sikkerhedspatch for at løse adskillige sårbarheder i Linux-kernen for Xilinx ZynqMP-processorer...
669 LikesComments Off på Linux-kernesårbarheder for nylig opdaget
Indsendt af genbruger | 03. januar 2025
I nutidens hurtigt udviklende cybersikkerhedslandskab er det afgørende at sikre, at kun pålidelig software får lov til at køre i en it-infrastruktur. En grundlæggende mekanisme til at opnå dette på hardwareniveau...
643 LikesComments Off om forbedring af infrastruktursikkerheden med implementering af Load Balancers med Secure Boot