Was ist Clustering?
Clustering bezeichnet die Verbindung von zwei oder mehr Computern, sodass sie für Clients wie eine einzige (virtuelle) Maschine erscheinen. Im Allgemeinen wird dies erreicht, indem ein Load Balancer vor dem Cluster platziert wird, der Clientanfragen entgegennimmt und auf die Mitgliedsknoten im Cluster verteilt. Clustering ist eine kostengünstige Möglichkeit, die Leistung, Zuverlässigkeit und Skalierbarkeit einer Website oder Anwendung mithilfe handelsüblicher Hardware zu verbessern.
Allgemeine Informationen zu Load Balancern finden Sie unter 80 % Ersparnis gegenüber Hardware-Load-Balancern.
Clustering wird auch als horizontale Skalierung bezeichnet. Bei steigender Nachfrage fügen Sie dem Cluster einfach weitere Server hinzu, und der Load Balancer verteilt die Anfragen auf die größere Servergruppe. Im Gegensatz dazu müssen bei der vertikalen Skalierung Server durch leistungsfähigere Modelle ersetzt werden, die eine höhere Anzahl von Anfragen pro Sekunde verarbeiten können – ein in der Regel kostspieliger Ansatz.
In der gängigsten Konfiguration stellen alle Server in einem Cluster dieselben Inhalte bereit und führen dieselben Anwendungen aus. In diesem Fall reichen einfache Load-Balancing-Algorithmen aus. Einer der einfachsten ist das Round-Robin-Verfahren, bei dem Anfragen der Reihe nach auf die Knoten im Cluster verteilt werden. Es ist auch möglich, verschiedene Arten spezialisierter Systeme in einem Cluster zusammenzufassen und einen Layer-7-Load-Balancer zu verwenden, der den Datenverkehr je nach Art des angeforderten Inhalts an den entsprechenden Server weiterleitet. Beispielsweise kann der Load Balancer Videoanfragen an einen Streaming-Media-Server und Anfragen nach Preis- und Bestandsinformationen an einen Server weiterleiten, auf dem eine Datenbankanwendung ausgeführt wird.
Vorteile von Clustering
- Bessere Leistung – Indem Sie bei Bedarf weitere Cluster-Knoten hinzufügen und die Last auf diese verteilen, können Sie die Anfragen Ihrer Benutzer nach Web- und Anwendungsdaten schnell und präzise beantworten.
- Höhere Zuverlässigkeit – Ein Cluster beseitigt per Definition einzelne Ausfallpunkte. Wenn ein Knoten ausfällt, leitet der Load Balancer Anfragen an die anderen Knoten weiter, bis der ausgefallene Knoten wieder online ist.
- Geringere Kosten – Clustering ist eine kostengünstige Möglichkeit, Leistung und Skalierbarkeit zu erzielen, da dafür lediglich Standardhardware benötigt wird.
- Einfache Wartung – Knoten können bei Bedarf für Wartungsarbeiten und Upgrades offline genommen werden, selbst während der regulären Geschäftszeiten, da die anderen Knoten im Cluster weiterhin für die Bearbeitung von Anfragen verfügbar sind.
Wie kann NGINX helfen?
NGINX Plus und NGINX sind erstklassige Load-Balancing-Lösungen, die von stark frequentierten Websites wie Dropbox, Netflix und Zynga eingesetzt werden. Mehr als 350 Millionen Websites weltweit vertrauen auf NGINX Plus und NGINX Open Source, um ihre Inhalte schnell, zuverlässig und sicher bereitzustellen.
Als softwarebasierter Load Balancer ist NGINX Plus deutlich kostengünstiger als Hardwarelösungen mit vergleichbarem Funktionsumfang. Dank seiner ausgefeilten Load-Balancing-Algorithmen, Serverzustandsprüfungen und weiteren Funktionen eignet es sich ideal, um den Datenverkehr auf eine Gruppe von Servern zu verteilen.
Weitere Informationen zu den Vorteilen von NGINX Plus für den Lastenausgleich Ihrer Anwendungen finden Sie in unserem Blogbeitrag „Fünf Gründe für den Umstieg auf einen Software-Load-Balancer“.
