In der Ära des Cloud Computing wirkt sich die Leistung von Cloud-Servern direkt auf die Anwendungserfahrung, die Geschäftskontinuität und die Kosteneffizienz aus. Die Wahl des richtigen Leistungstest-Tools kann Ihnen helfen, die CPU, den Arbeitsspeicher, die Festplatten-E/A, die Netzwerkbandbreite und andere Schlüsselindikatoren des Cloud-Servers genau zu bewerten, und bietet Datenunterstützung für Entscheidungen zur Ressourcenoptimierung und Kapazitätserweiterung. In diesem Artikel werden mehrere gängige Tools für Leistungstests von Cloud-Servern empfohlen, die verschiedene Testszenarien und technische Anforderungen abdecken.
Umfassendes Tool für Leistungstests
1. geekbench 6
Geekbench ist ein umfassendes, plattformübergreifendes Tool für Leistungstests, das Windows, Linux, macOS und andere Betriebssysteme unterstützt und sich damit ideal für die Bewertung der Gesamtleistung von Cloud-Servern eignet.
Offizielle Website:https://www.geekbench.com/

Kernfunktionalität:
- CPU-Leistungstests: einschließlich Ganzzahlberechnungen, Gleitkommaberechnungen, Speicherleistung usw.
- Bewertung der Rechenleistung: Unterstützt umfassende Tests der CPU-Multicore-Leistung.
- Unterstützt mehrere Befehlssätze: ermöglicht die volle Nutzung der Leistung von Cloud-Servern mit unterschiedlichen Architekturen.
SchneidkanteDie Testergebnisse sind intuitiv und bieten detaillierte Leistungsbewertungen und Vergleichsdaten für einfache Leistungsvergleiche zwischen verschiedenen Konfigurationen von Cloud-Servern.
2. unixBench
UnixBench ist ein klassisches Unix/Linux-Systemleistungstestwerkzeug, das sich auf die Bewertung der Gesamtsystemleistung konzentriert.
Offizielle Website:https://github.com/topics/unixbench

Kernfunktionalität:
- Vielschichtige Tests: einschließlich CPU-Operationen, Speicherzugriff, Lesen und Schreiben von Dateien usw.
- Multi-Thread-Tests: können gleichzeitige Szenarien mit mehreren Benutzern simulieren
- Standardisiertes Scoring: Visualisierung der Leistung durch ein Index-Scoring-System
SchneidkanteOpen Source und kostenlos, lange Geschichte, Testergebnisse haben einen hohen Referenzwert, geeignet für die grundlegende Leistungsbewertung von Linux-Cloud-Servern.
Tools zum Testen der CPU- und Speicherleistung
1. stress-ng
Stress-ng ist ein leistungsstarkes Stresstest-Tool, das intensive Tests von CPU, Speicher und anderen Systemressourcen durchführt.
Adresse herunterladen:https://fossies.org/linux/privat/

Kernfunktionalität:
- Mehrere Arten von Belastungstests: Unterstützung von CPU-, Speicher-, Festplatten-E/A- und anderen Arten von Belastungstests
- Flexible Konfiguration: Sie können die Dauer des Tests, die Anzahl der Gleichzeitigkeiten und andere Parameter festlegen
- Detaillierte Statistiken: Bereitstellung von Statistiken zur Ressourcennutzung während des Testprozesses
SchneidkanteEin leichtgewichtiges Tool mit einfacher Installation und flexibler Parameterkonfiguration, geeignet für die Bewertung der Stabilität von Cloud-Servern unter hoher Last.
2. sysbench
Sysbench ist ein modulares Leistungstestwerkzeug, das CPU-, Speicher-, Datenbank- und andere Leistungstests unterstützt.
Offizielle Website:https://github.com/akopytov/sysbench

Kernfunktionalität:
- Mehrdimensionale Tests: CPU-Rechenleistung, Speicherbandbreite, Datei-E/A, usw.
- Anpassbare Tests: Unterstützung für die Anpassung von Testparametern und Szenarien
- Datenbanktests: Spezialisierte Testmodule für MySQL und andere Datenbanken.
SchneidkanteUmfassende Funktionalität und Unterstützung für mehrere Testszenarien, geeignet für Benutzer, die eine eingehende Leistungsanalyse von Cloud-Servern benötigen.
Werkzeug zum Testen der Festplatten-E/A-Leistung
1. fio
Fio (Flexible I/O Tester) ist ein professionelles Tool zum Testen der Festplatten-E/A-Leistung, das häufig zur Bewertung der Leistung von Speichersystemen eingesetzt wird.
Offizielle Website:https://github.com/axboe/fio

Kernfunktionalität:
- Mehrere E/A-Modi: unterstützt zufälliges Lesen/Schreiben, sequentielles Lesen/Schreiben usw.
- Benutzerdefinierte Tests: konfigurierbare Parameter wie Blockgröße, Warteschlangentiefe usw.
- Detaillierter Bericht: liefert wichtige Metriken wie IOPS, Durchsatz, Latenz, usw.
SchneidkanteHochgradig anpassbar mit professionellen und zuverlässigen Testergebnissen, geeignet für die Bewertung der Leistung lokaler Festplatten oder der Cloud-Speicher von Cloud-Servern.
2. dd-Befehl
dd ist ein Befehlszeilentool, das mit Linux mitgeliefert wird und eine einfache, aber schnelle Möglichkeit darstellt, die Leistung beim Lesen und Schreiben auf einer Festplatte zu beurteilen.
Kernfunktionalität:
- Sequentieller Lese-/Schreibtest: Testen Sie die Schreibgeschwindigkeit der Festplatte, indem Sie große Dateien erstellen.
- Keine Kosten: in das System integriert, keine zusätzliche Installation erforderlich
- Schnelle Bewertung: geeignet für erste Leistungstests der Bandscheiben
Anwendungsbeispiel:
# 测试写入速度
dd if=/dev/zero of=testfile bs=1G count=1 oflag=direct
# 测试读取速度
dd if=testfile of=/dev/null bs=1G count=1 iflag=direct
Tools zur Prüfung der Netzwerkleistung
1. iperf3
iperf3 ist ein professionelles Netzwerk-Performance-Tool zur Messung der TCP- und UDP-Bandbreitenleistung.
Kernfunktionalität:
- Bandbreitentest: Genaue Messung der Netzwerkbandbreite
- Unterstützung mehrerer Protokolle: Unterstützung von TCP, UDP und anderen Protokollen.
- Bidirektionale Tests: Up- und Download-Leistung können gleichzeitig getestet werden
SchneidkantePlattformübergreifende Unterstützung, einfache Bedienung, genaue Ergebnisse, geeignet für die Bewertung der Leistung von Verbindungen zwischen Cloud-Servern oder zwischen Cloud-Servern und lokalen Netzwerken.
Die Installationsmethoden für die verschiedenen Betriebssysteme sind wie folgt:
- Linux-System:
- Ubuntu/Debian:
sudo apt install iperf3 - CentOS/RHEL:
sudo yum install iperf3 - Fedora:
sudo dnf install iperf3
- Ubuntu/Debian:
- macOS-System:
Es kann mit Homebrew installiert werden:brew install iperf3 - Windows-System:
Sie muss von folgenden Stellen kommen iperf offizielle Website Laden Sie das vorkompilierte Installationspaket herunter, entpacken Sie es und verwenden Sie es (sowohl 32- als auch 64-Bit-Versionen sind enthalten).
Nachdem die Installation abgeschlossen ist, geben Sie in einem Terminal oder einer Eingabeaufforderung Folgendes ein iperf3 -vWenn die Versionsinformationen angezeigt werden können, war die Installation erfolgreich.
2. speedtest-cli
Speedtest-cli ist die Kommandozeilenversion der bekannten Internet-Geschwindigkeitstest-Website Speedtest, die sich für die schnelle Überprüfung der Internetverbindungsgeschwindigkeit von Cloud-Servern eignet.
Offizielle Website:https://www.speedtest.net/zh-Hans/apps/cli

Kernfunktionalität:
- Internet-Geschwindigkeitstest: Test der Download- und Upload-Geschwindigkeit
- Serverauswahl: Testserver kann angegeben werden
- Ergebnis-Export: Unterstützung des Exports von Testergebnissen in das Text- oder JSON-Format.
SchneidkanteEinfach zu verwenden, keine komplexe Konfiguration erforderlich und geeignet für ein schnelles Verständnis der Netzwerkleistung von Cloud-Servern.
Cloud Native Performance Testing Tools
1. k6
k6 ist ein modernes Lasttest-Tool, das für Cloud-native Anwendungen und APIs entwickelt wurde.
Offizielle Website:https://k6.io/

Kernfunktionalität:
- Lasttests: Simulation des gleichzeitigen Zugriffs durch eine große Anzahl von Benutzern
- Skripted Tests: Unterstützung für das Schreiben von Testskripten in JavaScript
- Cloud-Integration: Integriert sich in gängige Cloud-Plattformen
SchneidkanteLeichtgewichtig und leicht skalierbar zum Testen der Leistung von APIs und Microservices, die auf Cloud-Servern bereitgestellt werden.
Grundlegende Anwendung des Verfahrens:
- Installation von k6:
- Linux:
sudo apt install k6(Debian/Ubuntu) oder über das offizielle Binärpaket. - macOS:
brew install k6 - Fenster: von k6 offizielle Website Laden Sie das Installationspaket herunter, oder verwenden Sie WSL
- Linux:
- Schreiben von Testskripten(z.B..
test.js)
import http from 'k6/http';
import { check, sleep } from 'k6';
export const options = {
vus: 10, // 虚拟用户数
duration: '30s', // 测试持续时间
};
export default function() {
const res = http.get('https://api.example.com/');
check(res, { 'status is 200': (r) => r.status === 200 });
sleep(1); // 每个请求间隔1秒
} Führen Sie den Test durch:k6 run test.js
Ergebnisse anzeigen:
Am Ende des Tests gibt der Endpunkt einen zusammenfassenden Bericht aus, der Metriken wie Antwortzeitverteilung, Fehlerrate, Anfragen pro Sekunde (RPS) usw. enthält. Sie können die Ausgabe auch für Tools wie Grafana konfigurieren, um eine detaillierte Analyse durchzuführen.
k6 eignet sich besonders für Entwicklungsteams zur Durchführung von Leistungsregressionstests während der Iteration oder zur Überprüfung der Stabilität des Systems unter hoher Last vor der Inbetriebnahme und ist ein gängiges Tool für Leistungstests von Cloud-nativen Anwendungen.
2. heuschrecke
Locust ist ein in Python geschriebenes Open-Source-Tool für Lasttests mit guter Erweiterbarkeit.
Offizielle Website:https://docs.locust.io/en/stable/
Lagerhaus:https://github.com/locustio/locust

Kernfunktionalität:
- Verteiltes Testen: Unterstützung mehrerer Maschinen zur Zusammenarbeit bei Lasttests
- Testszenario zur Code-Definition: Definition des Benutzerverhaltens durch Python-Code
- Echtzeitüberwachung: Bietet eine Webschnittstelle zur Anzeige von Testergebnissen in Echtzeit.
SchneidkanteHochgradig anpassbar für Cloud-Server-Leistungstests in komplexen Szenarien, insbesondere für Webanwendungen.
Beratung bei der Auswahl
- vorläufige BewertungFür eine einfache Leistungsbewertung werden Geekbench oder UnixBench für umfassende Tests empfohlen.
- besondere Prüfung:
- CPU/Speicher: Stress-ng, Sysbench
- Disk I/O: Fio, dd Befehle
- Netzwerkleistung: iperf3, Speedtest-cli
- Testen von AnwendungsszenarienFür Anwendungen, die auf Cloud-Servern bereitgestellt werden, werden k6 oder Locust für realitätsnahe Lasttests empfohlen.
- kontinuierliche ÜberwachungLangfristige Leistungsüberwachung in Kombination mit den Überwachungstools, die mit der Cloud-Plattform geliefert werden (z. B. AWS CloudWatch, AliCloud Monitor, usw.)
Durch den sinnvollen Einsatz dieser Leistungstest-Tools erhalten Sie ein umfassendes Verständnis der Leistung von Cloud-Servern, das eine wissenschaftliche Grundlage für die Optimierung der Ressourcenzuweisung, die Kostenkontrolle und die Geschäftsexpansion bietet. Bei den eigentlichen Tests empfiehlt es sich, mehrere Tools für die Prüfung zu kombinieren und den Test in verschiedenen Zeiträumen zu wiederholen, um genauere Ergebnisse zu erhalten.