Commit b47ceeaa authored by Dirk-Willem van Gulik's avatar Dirk-Willem van Gulik
Browse files

Commit early and often. This should merge all changes into

ab from 1.3 into 2.0. SSL work not completed; I need to move
some of the autoconf detection of mod_wtls to a more central
place first. Any suggestions appreciated :-)

PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88628 13f79535-47bb-0310-9956-ffa450edef68
parent d9433eae
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
Changes with Apache 2.0.16-dev

  *) Changes to 'ab'; fixed int overrun's, added statistics, output in
     csv/gnuplot format, rudimentary ssl support and various other tweaks
     to make results more true to what is measured. The upshot of this it
     turns out that 'ab' has often underreported the true performance of
     apache. Often by a order of magnitude :-) See talk/paper of Sander 
     Temme <sctemme@covalent.net> at April ApacheCon 2001 for details.
     [Dirk-Willem van Gulik]

  *) Clean up mod_cgid's temporary request pool.  Besides fixing a
     storage leak this ensures that some unnecessary pipes are closed.
     [Jeff Trawick]
+83 −2
Original line number Diff line number Diff line
@@ -57,6 +57,16 @@ ab \- Apache HTTP server benchmarking tool
[
.B \-k
] [
.B \-e
] [
.B \-q
] [
.B \-S
] [
.B \-i
] [
+ .B \-s
] [
.BI \-n " requests"
] [
.BI \-t " timelimit"
@@ -75,12 +85,20 @@ ab \- Apache HTTP server benchmarking tool
] [
.BI \-T " content-type"
] [
.BI \-X " proxy [ :port ]"
] [
.BI \-v " verbosity"
]
] [
.BI \-w " output HTML"
]
] [
.BI \-g " output GNUPLOT"
]
] [
.BI \-e " output CSV"
]
] [
.BI \-x " <table> attributes"
]
] [
@@ -89,7 +107,7 @@ ab \- Apache HTTP server benchmarking tool
] [
.BI \-z " <td> attributes"
]
.I [http://]hostname[:port]/path 
.I [http[s]://]hostname[:port]/path 

.B ab
[
@@ -118,6 +136,28 @@ benchmarking results.
.TP 12
.BI \-t " timelimit"
Maximum number of seconds to spend for benchmarking. This implies
.B \-d
Do not display the "percentage served within XX [ms] table". (legacy
support).
.TP 12
.B \-S
Do not display the median and standard deviation values, nor display
the warning/error messages when the average and median are more than
one or two times the standard deviation apart. And default to the 
min/avg/max values. (legacy support).
.TP 12
.B \-s
When compiled in (bb -h will show you) use the SSL protected
.B https
rather than the 
.B http
protocol. This feature is experimental and
.B very
rudimentary. You propably do not want to use it.
.TP 12
.B \-k 
Enable the HTTP KeepAlive feature; that is, perform multiple requests
within one HTTP session. Default is no KeepAlive.
a 
.B \-n 
.B 50000
@@ -140,7 +180,11 @@ The string is sent regardless of whether the server needs it; (i.e., has
sent an 401 authentication needed).

.TP 12
.BI \-p " Proxy-Authentication username:password"
.BI \-X " proxy[:port]"
Route all requests through the proxy (at optional port).

.TP 12
.BI \-P " Proxy-Authentication username:password"
Supply BASIC Authentication credentials to a proxy en-route. The username
and password are separated by a single ':' and sent on the wire uuencoded.
The string is sent regardless of whether the proxy needs it; (i.e., has
@@ -161,6 +205,30 @@ of a valid header line, containing a colon-separated field-value pair.
.BI \-T " content-type"
Content-type header to use for POST data.

.TP 12
.BI \-g " gnuplot file"
Write all measured values out as a 'gnuplot' or TSV (Tab separate values)
file. This file can easily be imported into packages like Gnuplot, IDL, Mathematica,
Igor or even Excell. The labels are on the first line of the file. 

.TP 12
.BI \-q
When processing more than 150 requsts; 
.B ab
outputs a progress count on 
.B stderr
every 10% or 100 requests or so. The 
.B -q
flag qill suppress these messages.

.TP 12
.BI \-e " CSV file"
Write a Comma separated value (CSV) file which contains for each
percentage (from 1% to 100%) the time (in milli seconds) it took
to serve that percentage of the requests. This is usually more
usefull than the 'gnuplot' file; as the results are already
'binned'.

.TP 12
.B \-v 
Set verbosity level - 4 and above prints information on headers, 3 and
@@ -205,4 +273,17 @@ performance rather than the server's.

.SH SEE ALSO
.BR httpd(8)
.P
The HTML output is not as complete as the text output.
.P
Up to version 1.3d
.B ab
has propably reported values way to low for most measurements;
as a single timeout (which is usually in the order of seconds)
will shift several thousands of milli-second responses by a
considerable factor. This was further componded by a serious
interger overrun which would for realistic run's (i.e. those
longer than a few minutes) produce believable but totally 
bogus results. Thanks to Sander Temme <sander@covalent.net>
for solving this riddle.
.
+480 −54

File changed.

Preview size limit exceeded, changes collapsed.