Definitie
Een load balancer is een netwerkcomponent (hardware, software of een cloud-dienst) die binnenkomende aanvragen verdeelt over een groep van twee of meer achterliggende servers. Doel: voorkomen dat een enkele server overbelast raakt, en zorgen dat de dienst beschikbaar blijft als er een server uitvalt.
Er zijn meerdere strategieen voor het verdelen: ronde verdeling (round-robin), op basis van de minste actieve verbindingen, of op basis van de geografische locatie van de gebruiker. Moderne load balancers controleren ook of een server gezond is en sturen geen verkeer naar instances die niet reageren.
Waarom het ertoe doet voor MKB
Zodra een webapplicatie, API of online dienst zakelijk relevant is, wordt een uitval direct merkbaar. Een load balancer is de simpelste manier om beschikbaarheid te verhogen: in plaats van een enkele server die alles draagt, staan er twee of meer naast elkaar en zorgt de load balancer dat de uitval van een server geen klantimpact heeft.
Bij cloud-providers (AWS, Azure, GCP) is een load balancer een managed dienst die je in minuten activeert. Voor MKB-bedrijven die hun eigen webdiensten hosten, is het een basis-investering die het verschil maakt tussen “de site is plat” en “we hebben capaciteit verloren maar zijn nog online”.
Concreet voorbeeld
Een webshop in fietsonderdelen draaide op een enkele virtuele server bij een hoster. Tijdens een tv-uitzending waarin de winkel werd genoemd, kwamen er 4.000 gelijktijdige bezoekers binnen. De server liep vast en de site was 40 minuten plat. Schade naar schatting €8.000 aan gederfde omzet plus reputatie.
Na het incident werd de opzet veranderd: een load balancer (€25 per maand bij de hoster) verdeelt verkeer over drie identieke webservers. Bij een herhaling van zo’n piek schaalt het systeem inmiddels naar zes servers. Totale meerkosten: €180 per maand, inclusief de extra servers in stand-by. De volgende piek werd zonder uitval verwerkt.
Misverstanden en valkuilen
- “Een load balancer maakt je applicatie automatisch sneller.” Niet als de bottleneck elders zit (database, externe API, traag script). De load balancer verdeelt alleen verkeer, hij maakt geen individuele aanvragen sneller.
- “Met een load balancer heb je geen downtime meer.” Alleen voor de servers achter de balancer. Als de database, het netwerk of de load balancer zelf uitvalt, ben je alsnog plat. Hoge beschikbaarheid is een ketenvraagstuk.
- “Iedere webshop heeft een load balancer nodig.” Bij een rustige site met enkele honderden bezoekers per dag is een enkele goed-geconfigureerde server prima. De drempel ligt bij verkeer en bij de schade die uitval veroorzaakt.
- “Sessies werken automatisch na een load balancer.” Nee, applicaties moeten daarop ingericht zijn. Anders verliest een gebruiker zijn winkelmandje zodra het volgende verzoek bij een andere server landt.
Wanneer moet je hiervan wakker liggen, wanneer niet
Wakker liggen: als jouw bedrijf draait op een webapplicatie of API waar elke minuut downtime direct omzet of klanttevredenheid kost. Een enkele server zonder load balancer is dan een onnodige zwakke schakel, eenvoudig en goedkoop op te lossen.
Niet wakker liggen: als jouw bedrijf voornamelijk SaaS-tools afneemt en geen eigen webapplicaties host. De load balancing is dan de zorg van de SaaS-leverancier en blijkt uit hun SLA.
Gerelateerde termen
- CDN: verdeelt statische content geografisch, vaak gecombineerd met load balancing.
- Cloud computing: cloud-providers leveren load balancers als managed dienst.
- Microservices: architectuur die zwaar leunt op interne load balancing tussen services.
- API: API-endpoints worden vrijwel altijd achter een load balancer geplaatst.
- SLA: load balancing is een hoeksteen voor het halen van uptime-afspraken.
- DNS: DNS-routing kan als eenvoudig alternatief of aanvulling op load balancing dienen.