Load Balancer (Lastverteiler)
Der Load Balancer ist ein Lastverteiler, der die Antwortzeiten und Auslastung einzelner Server beurteilen und eine Anfrage von außen mit der bestmöglichen Server-Performance bedienen kann.
Anwendungsbeispiel
Global agierende Unternehmen sind weltweit unter einer Domain erreichbar. In Spitzenzeiten mit hohem Datenverkehr geht der Webserver irgendwann unter dem Ansturm der Besucher in die Knie. Der Seitenaufbau beim Besucher dauert dann sehr lange. Hängt der Geschäftserfolg von der Erreichbarkeit des Webservers ab, ist der Einsatz mehrerer Server von Nöten, um die Last zu verteilen. Ungeschickterweise kann eine Domain nur einem physikalischen Server zugewiesen werden. Dieser muss dann mit sehr viel Prozessorleistung und Arbeitsspeicher ausgestattet sein. Nur was ist, wenn die Maschine ausfällt oder ausgetauscht werden muss? Dann kann man nur mit mehreren Servern die Verfügbarkeit des Internet-Auftritts erhöhen. Um den Adressen-Konflikt zu beseitigen schaltet man einen Load Balancer zwischen Internet und mehreren Webservern. Der Load-Balancer bekommt dann die öffentliche Domain zugewiesen. Die Webserver bekommen z. B. Host-Adressen wie www1, www2, www3, etc. oder Länderkürzel zugewiesen. Somit wird dem Besucher suggeriert, dass er noch mit dem richtigen Server in Kontakt steht.
Der Load Balancer ermöglicht es also unter einer Internet-Adresse erreichbar zu sein, obwohl sich dahinter mehrere Server befinden.
Vergleich: Load Balancer vs. Proxy
Auf dem ersten Blick kommt die Funktionsweise des Load Balancers einem Proxy sehr nahe. Doch dem ist nicht so.
Während ein Proxy als Zwischenspeicher dient, der dazu auch noch als Stellvertreter agiert, verteilt der Load Balancer die Zugriffe tatsächlich auf mehrere Maschinen.
Load-Balancing-Verfahren
- DNS-Variante
- Round-Robin-Verfahren
- NAT mit Feedback
- URL-basiertes Verfahren
- Dienst-basiertes Verfahren
- Verschiedene Load-Balancing-Verfahren im Vergleich