Heim > Artikel > Betrieb und Instandhaltung > Super praktisch! Teilen Sie ein Stresstest-Artefakt: ab-Tool
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.
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.
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.
ab -n 100 -c 10 http://test.com/
Wobei -n die Anzahl der Anfragen darstellt, -c die Anzahl der Parallelität darstelltDie restlichen Befehle finden Sie unter http://apache.jz123.cn/programs/ab.html
Nachdem der obige Befehl ausgeführt wurde, wird der Testbericht ausgegeben
Vollständiger Testbericht
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/
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 //平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
Netzwerkverbrauchszeit
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/
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!