Angenommen, ich habe einen Webserver, der HTML-Seiten unter hoher Auslastung bereitstellt. Nehmen wir an, dass aus irgendeinem Grund nicht die CPU, nicht der RAM und nicht die Festplatte der Engpass sind, sondern das Netzwerk selbst. Wie kann ich feststellen, dass ein Linux-Server einfach zu viel Datenverkehr sendet oder empfängt und nicht mithalten kann? Woher weiß ich, ob die Netzwerkbandbreite beispielsweise über 60 % der Kapazität liegt? Wenn die Kapazität überschritten ist, wie skaliere ich sie?
Antwort1
Generell sollte das gesamte System analysiert werden, um festzustellen, wo die Grenzen liegen. BeispielsweiseUSE-Methodiküberprüft jede Ressource auf Auslastung, Sättigung und Fehler.
Alle Umgebungen können grundlegende, leicht messbare Leistungsmetriken wie CPU-Auslastung und Schnittstellenbandbreitenauslastung erfassen. Unter Linux können Tools wieNetzdatenoder Perf können viele Messgrößen im Detail anzeigen.
Ein umfassendes Verständnis Ihrer Umgebung hilft dabei, den Engpass zu finden. Wenn die Bandbreite maximal 95 Mbit/s beträgt, kann dies an einem alten 100-Mbit-Switch im Pfad liegen, oder der Internetdienst hat 100 Mbit/s. Oder das Speichersystem ist ziemlich langsam. Oder die Netzwerkkarten melden Überläufe, weil die Paketpuffer nicht schnell genug geleert werden.
Versuchen Sie, wenn möglich, Webserver auf mehrere Hosts mit unterschiedlicher Hardware zu skalieren. Gesamtressourcen von mehr als einer VM können hilfreich sein. Sie können Dinge mit einer Steuerung auf einem Host gleichzeitig ausprobieren. Und als Bonus könnte Lastenausgleich als Hochverfügbarkeitsfunktion betrachtet werden.