Heim > Artikel > Betrieb und Instandhaltung > Einführung in gängige Algorithmen für den Lastausgleich
Häufig verwendete Algorithmen für den Lastausgleich:
1. Polling (Round-Robin)
Polling ist Lastausgleich A Der relativ einfache und einfache Algorithmus erfordert keine Konfiguration zusätzlicher Parameter. Unter der Annahme, dass die Konfigurationsdatei M Server enthält, durchläuft der Algorithmus die Serverknotenliste und wählt in jeder Runde einen Server in Knotenreihenfolge aus, um die Anforderung zu bearbeiten. Wenn alle Knoten einmal aufgerufen wurden, wird der Algorithmus erneut beginnend mit dem ersten Knoten durchlaufen.
Eigenschaften:
Da jede Anfrage in diesem Algorithmus verschiedenen Servern zugewiesen wird, um sie einzeln in chronologischer Reihenfolge zu verarbeiten, eignet er sich für Clustersituationen mit ähnlicher Serverleistung, in denen jeder Server die trägt gleiche Belastung. Bei Clustern mit unterschiedlicher Serverleistung kann dieser Algorithmus jedoch leicht zu Problemen wie einer unangemessenen Ressourcenzuweisung führen.
2. Gewichtetes Polling
Um die Nachteile des gewöhnlichen Pollings zu vermeiden, wurde das gewichtete Polling ins Leben gerufen. Beim gewichteten Polling hat jeder Server seine eigene Gewichtung. Im Allgemeinen bedeutet ein größerer Gewichtswert eine bessere Leistung des Servers und er kann mehr Anfragen verarbeiten. Bei diesem Algorithmus werden Client-Anfragen proportional zu ihrer Gewichtung zugewiesen. Wenn eine Anfrage eintrifft, wird der Server mit der größten Gewichtung zuerst zugewiesen.
Funktionen:
Gewichtete Abfragen können auf Cluster mit unterschiedlicher Serverleistung angewendet werden, um die Ressourcenzuweisung rationaler zu gestalten.
Die Kernidee besteht darin, jeden Serverknoten zu durchlaufen und das Knotengewicht zu berechnen. Die Berechnungsregel ist die Summe aus aktuellem_Gewicht und seinem entsprechenden effektiven_Gewicht. In jeder Durchlaufrunde wird der Knoten mit dem größten Gewicht ausgewählt optimaler Serverknoten. Unter anderem ändert sich das effektive Gewicht mit der Ressourcensituation und der Antwortsituation während der Ausführung des Algorithmus.
3. IP-Hash (IP-Hash)
ip_hash weist Server basierend auf dem Hash-Wert der Client-IP zu, die die Anfrage stellt Von derselben IP gesendete Anforderungen werden demselben Server zugeordnet, oder verschiedene IPs mit demselben Hashwert werden demselben Server zugeordnet.
Funktionen:
Dieser Algorithmus löst bis zu einem gewissen Grad das Problem, dass Sitzungen in einer Cluster-Bereitstellungsumgebung nicht gemeinsam genutzt werden.
Empfohlenes Tutorial: Nginx-Tutorial
Das obige ist der detaillierte Inhalt vonEinführung in gängige Algorithmen für den Lastausgleich. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!