Tonnerre
A simple HTTP load generator, nothing fancy.
Suite
tonnerre is a mini suite, containing a load generator and a load receiver.
The combination of the two tools is helpful in asserting one's load generation
capacity.
Usage
You need at least one of target or listen.
tonnerre -target="http//example.com" # Launches a test against example.com
tonnerre -listen # Listens for HTTP requests on :8080
Generating load:
You can generate different types of load, using the following flags:
target, target to which requests will be sent (mandatory).
concurrent, number of concurrent goroutine that will produce requests.
duration, duration of the stress test.
request, total number of requests that will be produced.
rps, throttle to that many requests per second.
By default, tonnerre is not throttled (or absurdly throttled). It will try
to produce request number of GET to your target in as short as it can,
within duration. Whenever request or duration is fulfilled, the test
stops.
Default:
-concurrent=10
-response-len=1024
-rps=1000000
Estimating load:
You can verify the load generated by a load generator using tonnerre builtin
webserver.
listen, run in listen mode, convenient to be the receiving end of tonnerre
requests (mandatory).
port, port on which to listen.
response-len, length of the response to return, including HTTP header.
Default:
-port=8080
License
Antoine Grondin, 2014.
See MIT license in LICENSE.md.