Vorwort 1. Benchmarking ist eine Art Leistungstest, bei dem der Schwerpunkt auf quantitativen, reproduzierbaren und vergleichbaren Tests bestimmter Leistungsindikatoren einer Klasse von Testobjekten liegt. Um es noch besser zu verstehen: Benchmarking dient dazu, durch Benchmarking zu einem bestimmten Zeitpunkt ein bekanntes Leistungsniveau (Baseline genannt) festzulegen. Wenn sich die Hardware- und Softwareumgebung des Systems ändert, wird erneut Benchmarking durchgeführt, um die Auswirkungen dieser Änderungen auf die Leistung zu bestimmen. Dies ist auch die häufigste Verwendung von Benchmarking. Zu den weiteren Einsatzmöglichkeiten gehören die Ermittlung von Leistungsgrenzen bei bestimmten Belastungsstufen, die Verwaltung von System- oder Umgebungsänderungen und die Ermittlung von Bedingungen, die zu Leistungsproblemen führen könnten. 2. Die Rolle des Benchmarkings: Bei den meisten Webanwendungen treten Systemengpässe häufig leicht auf der Datenbankseite auf. Der Grund ist einfach: Andere Faktoren in Webanwendungen, wie Netzwerkbandbreite, Lastausgleichsknoten, Anwendungsserver (einschließlich CPU, Speicher, Festplattenlicht, Anzahl der Verbindungen usw.) und Cache, können durch horizontale Erweiterung (allgemein als Addition von Maschinen bezeichnet) leicht Leistungsverbesserungen erzielen. Aufgrund der Anforderungen an die Datenkonsistenz ist es bei Datenbanken wie MySQL nicht möglich, den Druck beim Schreiben von Daten in die Datenbank durch Hinzufügen von Maschinen zu verteilen. Obwohl der Druck durch Front-End-Caching (Redis usw.), Trennung von Lesen und Schreiben sowie Sharding von Bibliotheken und Tabellen verringert werden kann, unterliegt er im Vergleich zur horizontalen Erweiterung anderer Systemkomponenten zu vielen Einschränkungen. 3. Der Unterschied zwischen Benchmarktest und Stresstest: In der Praxis werden Benchmarktests und Stresstests häufig verwechselt. Benchmarktests können als Stresstest für das System verstanden werden. Beim Benchmarktest wird jedoch die Geschäftslogik nicht berücksichtigt. Er ist einfacher, direkter und leichter zu testen. Daten können von Tools generiert werden und müssen nicht real sein. Beim Stresstest wird im Allgemeinen die Geschäftslogik (z. B. Warenkorbgeschäft) berücksichtigt und es sind reale Daten erforderlich. 4. Benchmarking-Tools: SysBench ist ein modulares, plattformübergreifendes, mehrthreadiges Benchmarktool, das hauptsächlich zur Bewertung der Datenbanklast unter verschiedenen Systemparametern verwendet wird. Es umfasst im Wesentlichen folgende Prüfungsarten: 1. CPU-Leistung 2. Disk-IO-Leistung 3. Scheduler-Leistung 4. Speicherbelegung und Übertragungsgeschwindigkeit 5. POSIX-Thread-Leistung 6. Datenbankleistung (OLTP-Benchmark) Derzeit unterstützt Sysbench hauptsächlich drei Datenbanken: MySQL, pgsql und Oracle. Installieren
Freundliche Erinnerung: Wenn während der Installation ein Abhängigkeitspaket fehlt, sehen Sie hier nach Datenaufbereitung Vorbereiten
2. Erste Schritte find / -name oltp*.lua #Suchen Sie den Pfad des in Sysbench integrierten Datenschreibskripts, das später zum Ausführen von Befehlen verwendet wird
Fehler bei der Ausführungsaufforderung Grund: Die importierten Daten überschreiten den Standardwert der Datenbank lösen: Sie müssen die Datenkonfiguration auf dem Server ändern, auf dem MySQL installiert ist vim /etc/meine.cnf Ändern Sie den Wert von max_allowed_packet. Wenn er nicht vorhanden ist, fügen Sie am Ende eine Zeile hinzu. Erneut erfolgreich ausführen, Daten auf dem MySQL-Client prüfen Ausführen des Tests
Der obige Befehl gibt an, dass 10 gleichzeitige Threads verwendet werden, die Ausführungszeit 30 Sekunden beträgt und die Testinformationen alle 3 Sekunden ausgegeben werden. Zu den für uns wichtigeren Informationen gehören:
Bereinigen der Daten Vergessen Sie nicht den letzten Feinschliff nach Abschluss des Tests. Eine große Menge an in der Datenbank gespeicherten Testdaten wirkt noch immer nach.
Überprüfen Sie die Daten Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Vue implementiert dynamische Routingdetails
Einführung Xiao A war gerade dabei, Code zu schre...
Das MySQL-Entwicklungsteam hat am 14. Oktober 201...
Für gleichmäßig verteilte Layouts verwenden wir i...
Inhaltsverzeichnis Zusammenfassung der Distribute...
Wenn Sie nicht wissen, wie das System auf dem Com...
Inhaltsverzeichnis Vorwort Informationen zu WebSo...
1.17.9 Wirklich leckerer Nginx-Download-Adresse: ...
Als ich mich kürzlich lokal unter Linux anmeldete...
Inhaltsverzeichnis 1. Was ist eine Unterabfrage? ...
Installieren Sie die erforderliche Umgebung 1. gc...
Die folgenden Installationen verwenden alle das V...
mysql-5.7.9 bietet endlich eine Shutdown-Syntax: ...
Fünf Verzögerungsmethoden für die MySQL-Zeitblind...
Ich habe kürzlich bei einem praktischen Trainings...
Inhaltsverzeichnis Verwenden bedingter Typen in g...