BaukBench |
BaukBench - HTTP/1.1 benchmarking tool
Description
BaukBench is a HTTP/1.1 benchmark/stress test tool for measuring
performance of Web servers.
Advantage of BaukBench compared to other HTTP benchmark tools is that it does
not have limitations which produce bottlenecks to appear on side of client hence
making impossible to measure Web server's max performance.
Ie. benchmark tool "ab" (ApacheBench) does not handle well large number of
simultaneous HTTP connections, ie. over 500, and cannot bench dynamic content
with KeepAlive connections. Benchmark tool "httperf" makes 1 second delay
between requests, has no support for KeepAlive connections, etc.
BaukBench does not have these limitations and using minimum resource on client
it is capable of producing extreme load for testing max performance of a Web
server.
Features
- Support for benchmarking static and dynamic content, with KeepAlive on/off
- Unlimited number of simultaneous HTTP connections
- Low CPU/memory requirements
USAGE:
./bb ARGUMENTS
Arguments:
-host HOSTNAME Name of host, ie. www.domain.com or 123.45.6.78
-port PORTNO Server port, default 80
-url URL Request URL, ie. page.html
-n REQUESTS Number of requests to perform
-c CONNECTIONS Number of simultaneous connections, default 1
-postfile POSTFILE File with POST request data
-t CONTENTTYPE Content type for POST data, ie. application/x-www-form-urlencoded
-cookie COOKIE Send cookie, ie. XYZ=abc
-auth AUTHORIZATION Send Basic authorization, ie. usrnam:mypswrd
-proxyauth AUTHORIZATION Send proxy authorization in request, ie. usrnam:mypswrd
-u USERAGENT Useragent, default BaukBench/n.n.n
-v VERBOSE Verbosity level 0-3
-w SECONDS Wait max seconds for connection I/O, default 30
-k KeepAlive connections
-head HEAD method, default GET
-force Ignore errors and keep benchmarking
-help Display usage info, this message
Example:
Benchmarking server on port 80, 10000 requests, 500 simultaneous connections,
using KeepAlive:
$ ./bb -host www.domain.com -url /page.html -n 10000 -c 500 -k
Benchmarking PHP server, 4000 requests, 350 simultaneous connections, sending
cookie in request:
$ ./bb -host www.domain.com -url "/script.php?abc=xyz" -n 4000
-c 350 -k -cookie "XYZ=abc"
Example output:
$ ./bb -host www.domain.com -url /page.html -n 10000 -c 500 -k
Server software: Bauk/2.0.15
Server hostname: www.domain.com
Server port: 80
Benchmark time: 9.409 seconds
Simultaneous connections: 500
Established: 500
Connections used: 500
Request URL: /page.html
Complete requests: 10499
KeepAlive requests: 10499
Requests per connection: 20.99
Requests per second: 1115.79
W-Total written: 1.02M (1070898 bytes)
W-Transfer rate: 111K (113816 bytes)/second
R-Total read: 242.40M (254180790 bytes)
R-Total response body: 239.89M (251545541 bytes)
R-Content length per response: 23K (23959 bytes) avg.
R-Transfer rate: 25.76M (27014644 bytes)/second
|