Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Super praktisch! Teilen Sie ein Stresstest-Artefakt: ab-Tool

Super praktisch! Teilen Sie ein Stresstest-Artefakt: ab-Tool

青灯夜游
青灯夜游nach vorne
2022-05-12 14:38:443325Durchsuche

Software-Stresstests sind ein grundlegendes Qualitätssicherungsverhalten, das Teil aller wichtigen Software-Testbemühungen ist. Daher sind Stresstests sehr wichtig. Wie führt man Stresstests durch? In diesem Artikel werde ich Ihnen ein superpraktisches Stresstest-Tool vorstellen – das Ab-Tool (Apache Bench). Ich hoffe, es wird Ihnen hilfreich sein!

Empfohlene Video-Tutorials: „Millionen Daten-Parallelitätslösungen (Theorie + Praxis)

Vorab geschrieben


Bevor wir Ab-Tools lernen, müssen wir ein paar Dinge über das Druckkonzept verstehen des Tests

  • Durchsatzrate (Anfragen pro Sekunde)
    Konzept: eine quantitative Beschreibung der gleichzeitigen Verarbeitungsfähigkeit des Servers, die Einheit ist reqs/s, was sich auf die Anzahl der Anfragen bezieht, die pro Zeiteinheit unter einem bestimmten Wert verarbeitet werden Anzahl gleichzeitiger Benutzer. Die maximale Anzahl von Anfragen, die pro Zeiteinheit unter einer bestimmten Anzahl gleichzeitiger Benutzer verarbeitet werden können, wird als maximale Durchsatzrate bezeichnet.
    Berechnungsformel: Gesamtzahl der Anfragen / für die Verarbeitung dieser Anfragen aufgewendete Zeit, d : Die Anzahl der Anfragen, die der Server zu einem bestimmten Zeitpunkt akzeptiert, ist vereinfacht gesagt eine Sitzung.

  • Die Anzahl gleichzeitiger Benutzer (Parallelitätsebene) Konzept: Beachten Sie den Unterschied zwischen diesem Konzept und der Anzahl gleichzeitiger Verbindungen, d. h. der Anzahl Verbindungen.

  • Durchschnittliche Benutzerwartezeit für Anfragen (Zeit pro Anfrage) Berechnungsformel: Zeit, die für die Bearbeitung aller Anfragen aufgewendet wurde / (Gesamtzahl der Anfragen / Anzahl gleichzeitiger Benutzer), d Tests / (Vollständige Anfragen / Parallelitätsgrad)

  • Durchschnittliche Wartezeit für Serveranfragen (Zeit pro Anfrage: über alle gleichzeitigen Anfragen) Berechnungsformel: Die Zeit, die zum Abschließen aller Anfragen benötigt wird/Gesamtzahl der Anfragen ,
    Zeitbedarf für / TestsComplete-Anfragen
    Wie Sie sehen können, ist es der Kehrwert der Durchsatzrate.

    Gleichzeitig ist es auch = die durchschnittliche Wartezeit für Benutzeranfragen/Anzahl gleichzeitiger Benutzer, d : Apache Bench
  • Die Erklärung auf der offiziellen Website lautet wie folgt:


    ab ist ein Leistungstesttool für das Apache Hypertext Transfer Protocol (HTTP). Seine Entwurfsabsicht besteht darin, die Ausführungsleistung des aktuell installierten Apache darzustellen, hauptsächlich um zu zeigen, wie viele Anfragen pro Sekunde Ihr installierter Apache verarbeiten kann.

  • Erklärung von anderen Websites:

ab ist Apaches eigenes Stresstest-Tool. ab ist sehr praktisch. Es kann nicht nur Stresstests für den Website-Zugriff auf dem Apache-Server durchführen, sondern auch Stresstests auf anderen Servertypen. Wie Nginx, Tomcat, IIS usw.


Laden Sie das AB-Tool herunter.

  • Betreten Sie die offizielle Apache-Website http://httpd.apache.org/. Laden Sie Apache herunter Die Windows-Umgebung Nehmen Sie C:apacheApache24 als Beispiel.
Öffnen Sie das Terminal und geben Sie den Befehl ein ab -n 100 -c 10 http://test.com/
Wobei -n die Anzahl der Anfragen darstellt, -c die Anzahl der Parallelität darstellt

Die restlichen Befehle finden Sie unter http://apache.jz123.cn/programs/ab.html
  • Analyse der Testergebnisse

Nachdem der obige Befehl ausgeführt wurde, wird der Testbericht ausgegeben

Vollständiger Testbericht


Dies Der Abschnitt zeigt die Informationen des Webservers. Sie können sehen, dass der Server Nginx verwendet, der Domänenname ist wan.bigertech.com, der Port ist 80

Serverinformationen

Dieser Absatz enthält verwandte Informationen zum angeforderten Dokument. Der Speicherort ist „/“ und die Größe des Dokuments beträgt 338436 Bytes (dies ist die Körperlänge der http-Antwort)


Dokumentinformationen cd C:apacheApache24bin
即可启动ab

开始测试


输入命令
ab -n 100 -c 10 http://test.com/

Dieser Abschnitt zeigt mehrere

wichtige Indikatoren für Stresstests

Wichtige Indikatoren

Concurrency Level: 100
//并发请求数
Time taken for tests: 50.872 seconds
//整个测试持续的时间
Complete requests: 1000
//完成的请求数
Failed requests: 0
//失败的请求数

Total transferred: 13701482 bytes
//整个场景中的网络传输量
HTML transferred: 13197000 bytes
//整个场景中的HTML内容传输量

Requests per second: 19.66 [#/sec] (mean)
//吞吐率,大家最关心的指标之一,相当于 LR 中的每秒事务数,后面括号中的 mean 表示这是一个平均值
Time per request: 5087.180 [ms] (mean)
//用户平均请求等待时间,大家最关心的指标之二,相当于 LR 中的平均事务响应时间,后面括号中的 mean 表示这是一个平均值
Time per request: 50.872 [ms] (mean, across all concurrent requests)
//服务器平均请求处理时间,大家最关心的指标之三

Transfer rate: 263.02 [Kbytes/sec] received
//平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
  • Dieser Absatz stellt die Aufschlüsselung der im Netzwerk verbrachten Zeit dar


Netzwerkverbrauchszeit

  • Dieser Abschnitt ist die Verteilung der Verarbeitungszeit jeder Anfrage. 50 % der Verarbeitungszeit liegen innerhalb von 4930 ms, 66 % der Verarbeitungszeit liegen innerhalb von 5008 ms ... Wichtig ist, sich die Verarbeitungszeit anzusehen von 90% .


Reaktionssituation

Informationen zu Anmeldeproblemen


Manchmal erfordern Stresstests, dass sich Benutzer anmelden. Was soll ich tun?
Bitte befolgen Sie die folgenden Schritte:

  • Nachdem Sie sich mit Ihrem Konto und Passwort angemeldet haben, verwenden Sie die Entwicklertools, um den Cookie-Wert (Sitzungs-ID) zu finden, der diese Sitzung identifiziert, und notieren Sie ihn

  • Wenn nur ein Cookie verwendet wird, geben Sie einfach den Befehl ein:
    ab -n 100 -C key=value http://test.com/ab -n 100 -C key=value http://test.com/

    如果需要多个Cookie,就直接设Header:
    ab -n 100 -H “Cookie: Key1=Value1; Key2=Value2” http://test.com/

    Wenn Sie mehrere Cookies benötigen, legen Sie einfach den Header direkt fest:
  • ab -n 100 -H "Cookie: Key1=Value1; Key2=Value2" http://test.com/

Zusammenfassung


Im Allgemeinen ist das ab-Tool ab Es ist klein und einfach und lässt sich schneller starten und erlernen. Es kann die erforderlichen grundlegenden Leistungsindikatoren liefern, es gibt jedoch keine grafischen Ergebnisse und kann nicht überwacht werden. Daher kann das Ab-Tool für vorübergehende Notfallaufgaben und einfache Tests verwendet werden.

Zu den gleichen Arten von Stresstest-Tools gehören: Webbench, Siege, http_load usw. Empfohlenes Lernen:

Nginx-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonSuper praktisch! Teilen Sie ein Stresstest-Artefakt: ab-Tool. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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