Testa svarstiderna på din webbplats med Apache Benchmark

ab (ApacheBenchmark) är ett programm som följer med webbservern Apache som används för att testa svarstider på webbplatser. ab är mycket lätt att använda.

"ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.”

Dess argument är enligt följande:

Usage: ab [options] [http[s]://]hostname[:port]/path

Options are:
-n requests     Number of requests to perform
-c concurrency  Number of multiple requests to make
-t timelimit    Seconds to max. wait for responses
-p postfile     File containing data to POST
-T content-type Content-type header for POSTing

-v verbosity    How much troubleshooting info to print

-w              Print out results in HTML tables

-i              Use HEAD instead of GET

-x attributes   String to insert as table attributes

-y attributes   String to insert as tr attributes

-z attributes   String to insert as td or th attributes

-C attribute    Add cookie, eg. 'Apache=1234. (repeatable)

-H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'Inserted after all normal header lines. (repeatable)

-A attribute    Add Basic WWW Authentication, the attributes
are a colon separated username and password.
-P attribute    Add Basic Proxy Authentication, the attributes
are a colon separated username and password.
-X proxy:port   Proxyserver and port number to use
-V              Print version number and exit
-k              Use HTTP KeepAlive feature
-d              Do not show percentiles served table.

-S              Do not show confidence estimators and warnings.

-g filename     Output collected data to gnuplot format file.

-e filename     Output CSV file with percentages served

-h              Display usage information (this message)

-Z ciphersuite  Specify SSL/TLS cipher suite (See openssl ciphers)

-f protocol     Specify SSL/TLS protocol (SSL2, SSL3, TLS1, or ALL)

Så för att göra ett prestandatest med 10 stycken webbförfrågningar mot webbservern på download11.com så skriver jag:

$ ab -n 10 -v 2 http://download11.com/

Och från detta kommer en mängd utdata och det som är intressant är följande rader:

[..]
Connection Times (ms)min  mean[+/-sd] median   max
[..]
Total:         46   50   7.9     48      68

Här ser vi ovan att median för svarstiderna är 50 ms vilket är helt ok, svarstiderna bör befinna sig under 100ms vilket är anses vara acceptabelt.

Testar jag i stället webbsajten bloggz.se med en sökfråga på följande sätt:

$ ab -n 10 http://bloggz.se/search?q=tore

Så ser vi följande svarstider istället:

[..]
Connection Times (ms)min  mean[+/-sd] median   max[..]

Total:        278  415 141.2    366     695

Här är svarstiden 415 ms vilket inte är acceptabelt och betyder att jag måste optimera PHP-koden mer vilket jag kommer att återkomma till.

En reaktion på ”Testa svarstiderna på din webbplats med Apache Benchmark

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *