Hi
I'm trying to make a stress test and I've so far not been successful in finding one tool that can do what I'm needed. Unfortunately haven't I found a nice perl module to use as a base of building such a tool myself either.
So far I've had a look at LWP::Parallel::UserAgent and HTTP::Async but neither seems to be up to the task. What I want to try to measure and get stats about is:
- Number of requests
- Number of concurrent requests
- Return codes
- Requests per second
- Page sizes
- Matching regexps against the result
- Response times
- Split up stats, ie if I make 10 000 requests I might want to be able to see stats split in 3, to see where the server started degrading
So far I've tried by making a module that @ISA LWP::Parallel::UserAgent. I'm able to override on_connect and on_return to store stats on each request: time it took, size of the data returned and return code.
However Parallel has no feature where you can say "I want to make n request per s" so it's not possible for me use it (unless rewriting it).
Now, to the question. Does anyone know of a tool, or a perl module I can build around, which can do all these things? ab(2), httperf can do parts of them but not enough.