- Submitted by: Nhan Tran ([email protected])
- Time spent: 2 hours
- Command-line argument parsing
- Input params
- Requests - Number of requests to perform
- Concurrency - Number of multiple requests to make at a time
- URL - The URL for testing.
- Prints use information if wrong arguments provided
- Implements HTTP load and summarize it
- Concurrency must be implemented with goroutine.
- Extend input params with:
- Timeout - Seconds to max. wait for each response
- Timelimit - Maximum number of seconds to spend for benchmarking
- Prints key metrics of summary, such:
- Server Hostname
- Server Port
- Document Path
- Document Length
- Concurrency Level
- Time taken for tests
- Complete requests
- Failed requests
- Total transferred
- Requests per second
- Time per request
- Time per request
- Transfer rate