Heim  >  Artikel  >  Datenbank  >  MySQL-Leistungsindikator TPS+QPS+IOPS-Stresstest-Beispielanalyse

MySQL-Leistungsindikator TPS+QPS+IOPS-Stresstest-Beispielanalyse

PHPz
PHPznach vorne
2023-05-26 18:41:222234Durchsuche

1. Übersicht über Leistungsindikatoren

QPS (Abfragen pro Sekunde) ist die Anzahl der von der Datenbank ausgeführten Abfragen pro Sekunde (einschließlich Einfügen, Auswählen, Aktualisieren, Löschen usw.).
TPS (Transactions Per Second) ist die Anzahl der Transaktionen pro Sekunde. Für eine Datenbank ist TPS die Anzahl der von der Datenbank pro Sekunde ausgeführten Transaktionen, basierend auf der Anzahl erfolgreicher Commits.
IOPS Die Anzahl der von der Festplatte pro Sekunde ausgeführten E/A-Vorgänge

2. Indikatorberechnungsmethode

2.1 TPS

# 🎜🎜#
Gilt für innodb-Transaktionen pro Sekunde (Anzahl der pro Sekunde übertragenen Transaktionen), dh die Anzahl der vom Server pro Sekunde verarbeiteten Transaktionen

Im Allgemeinen basiert die Bewertung der Systemleistung auf der Anzahl der pro Sekunde abgeschlossenen technischen Transaktionen. Die Gesamtverarbeitungskapazität des Systems hängt vom TPS-Wert des Moduls mit der niedrigsten Verarbeitungskapazität ab. 🎜# Gilt sowohl für InnoDB- als auch für MyISAM-Engines. Die Abfragerate pro Sekunde (QPS) ist ein Maß für den von einem bestimmten Abfrageserver verarbeiteten Datenverkehr Innerhalb eines bestimmten Zeitraums entspricht dies der Anzahl der Antwortanfragen pro Sekunde, was dem maximalen Durchsatz entspricht #
2,3 IOPS

IOPS (Eingabe/Ausgabe pro Sekunde) Das Eingabe- und Ausgabevolumen (oder die Anzahl der Lese- und Schreibvorgänge) ist einer der Hauptindikatoren für die Festplattenleistung. IOPS bezieht sich auf die Anzahl der E/A-Anfragen, die das System pro Zeiteinheit verarbeiten kann. Sie wird im Allgemeinen in der Anzahl der E/A-Anfragen gemessen, die pro Sekunde verarbeitet werden. Für Anwendungen mit häufigen zufälligen Lese- und Schreibvorgängen, wie z. B. OLTP (Online Transaction Processing), ist IOPS ein wichtiger Messindikator. Ein weiterer wichtiger Indikator ist der Datendurchsatz (Throughput), der sich auf die Datenmenge bezieht, die pro Zeiteinheit erfolgreich übertragen werden kann. Bei Anwendungen mit einer großen Anzahl sequenzieller Lese- und Schreibvorgänge, wie z. B. VOD (Video On Demand), wird den Durchsatzindikatoren mehr Aufmerksamkeit geschenkt. IOPS können in die folgenden Indikatoren unterteilt werden: Gesamt-IOPS, Festplatten-IOPS unter gemischter Lese-/Schreib- und sequenzieller zufälliger I/O-Last, MySQL-Leistungsindikator TPS+QPS+IOPS-Stresstest-Beispielanalyse Dies stimmt am besten mit der tatsächlichen I/O-Situation überein, und die meisten Anwendungen konzentrieren sich darauf Indikator.

Zufällige Lese-IOPS, IOPS unter 100 % zufälliger Leselast.

Zufällige Schreib-IOPS, IOPS unter 100 % zufälliger Schreiblast.

Sequentielle Lese-IOPS, IOPS unter 100 % sequenzieller Leselast.
Sequentielle Schreib-IOPS, IOPS unter 100 % sequenzieller Schreiblast.

Zu den wichtigsten Benchmark-Tools für IOPS-Tests gehören Iometer, IoZone, FIO usw., die umfassend zum Testen der IOPS der Festplatte unter verschiedenen Umständen verwendet werden können. Für Anwendungssysteme ist es notwendig, zunächst die Lasteigenschaften der Daten zu bestimmen, dann angemessene IOPS-Indikatoren für die Messung und Vergleichsanalyse auszuwählen und entsprechend geeignete Speichermedien und Softwaresysteme auszuwählen. Mysqlslap-Tools für Leistungstests und Stresstests. Es kann simulieren, dass mehrere Clients Druck auf die Datenbank ausüben, und Berichte erstellen, um die Leistung der Datenbank zu verstehen.

mysqlslap Der laufende Prozess ist hauptsächlich in drei Schritte unterteilt:
① Erstellen Sie Bibliotheken und Tabellen und importieren Sie Daten zum Testen. Dieser Vorgang wird von einem einzelnen Thread durchgeführt.

② Beginnen Sie mit dem Stresstest. Dieser Schritt kann mit mehreren Threads durchgeführt werden. MySQL-Leistungsindikator TPS+QPS+IOPS-Stresstest-Beispielanalyse③ Bereinigen Sie die Testdaten. Dieser Vorgang wird von einem einzelnen Thread durchgeführt.

[root@jeames ~]# mysqlslap --help




3.2 Fall

mysql> SHOW GLOBAL STATUS LIKE 'Com_commit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_commit    | 22402 |
+---------------+-------+
1 row in set (0.00 sec)

mysql> SHOW GLOBAL STATUS LIKE 'Com_rollback';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_rollback  | 0     |
+---------------+-------+
1 row in set (0.00 sec)
mysql> SHOW GLOBAL STATUS LIKE 'Uptime'
    -> ;
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Uptime        | 3319  |
+---------------+-------+
1 row in set (0.01 sec)
TPS=(Com_commit + Com_rollback)/Uptime


Das obige ist der detaillierte Inhalt vonMySQL-Leistungsindikator TPS+QPS+IOPS-Stresstest-Beispielanalyse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen