Um aus eigener Neugier einige Lasttests auf meinem Server durchzuführen, habe ich Folgendes ausgeführt:
ab -kc 50 -t 200 http://localhost/index.php
Dies öffnet 50 Keep-Alive-Verbindungen für 200 Sekunden und knallt meinen Server nur mit Anfragen nach index.php
In meinen Ergebnissen bekomme ich:
Concurrency Level: 50
Time taken for tests: 200.007 seconds
Complete requests: 33106
Failed requests: 32951
(Connect: 0, Receive: 0, Length: 32951, Exceptions: 0)
Write errors: 0
Keep-Alive requests: 0
Total transferred: 1948268960 bytes
HTML transferred: 1938001392 bytes
Requests per second: 165.52 [#/sec] (mean)
Time per request: 302.071 [ms] (mean)
Time per request: 6.041 [ms] (mean, across all concurrent requests)
Transfer rate: 9512.69 [Kbytes/sec] received
Beachten Sie die 32951 "fehlgeschlagenen" Anforderungen. Ich kann das nicht herausfinden.
Während der Test ausgeführt wurde, konnte ich von meinem Heimcomputer aus perfekt auf meine Website zugreifen, obwohl die Ladezeiten der Seiten am Ende der Seite als 0,5 anstelle der üblichen 0,02 angegeben wurden. Ich hatte jedoch nie eine fehlgeschlagene Anfrage.
Warum meldet AB, dass die Hälfte der Verbindungen fehlschlägt? Und was bedeutet "Länge:" in diesem Zusammenhang?