https://github.com/siadat/benchttp
HTTP server benchmarking tool
https://github.com/siadat/benchttp
benchmarking cli go
Last synced: 4 months ago
JSON representation
HTTP server benchmarking tool
- Host: GitHub
- URL: https://github.com/siadat/benchttp
- Owner: siadat
- Created: 2016-08-12T13:33:51.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-01-13T23:14:38.000Z (over 2 years ago)
- Last Synced: 2025-03-16T00:15:20.398Z (4 months ago)
- Topics: benchmarking, cli, go
- Language: Go
- Homepage:
- Size: 24.4 KB
- Stars: 117
- Watchers: 3
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Benchttp
[](https://godoc.org/github.com/siadat/benchttp/benchttp)
[](https://travis-ci.org/siadat/benchttp)Benchttp implements the most commonly used features of ApacheBench.
Benchmarks are limited with either `-n number-of-requests` or `-d total-duration`.
## Install
go install github.com/siadat/benchttp/cmd/benchttp@master
## Usage
Benchmark 1000 requests
benchttp -n 1000 http://localhost:8080
Benchmark 1000 requests with maximum 10 concurrently running requests
benchttp -n 1000 -c 10 http://localhost:8080
Benchmark server for 1s
benchttp -d 1s http://localhost:8080
Benchmark server for 1s with max 10 concurrently running requests
benchttp -d 1s -c 10 http://localhost:8080
## Output
Duration: 2.238s
Requests: 10000 (4468.7/s)
Responses: 10000 (4468.7/s)
[200]: 10000## Options
* `-d duration`, e.g., `-d 10s`
* `-n number-of-requests`, e.g., `-n 1000`
* `-c max-concurrent-requests`, e.g. `-c 100`
* `-u admin:pass` supply basic authentication
* `-H "key: value"` custom header
* `-i` do HEAD requests instead of GET## Contribute
Issues and PRs are welcome.
## Thanks
Thanks @Deleplace for testing and reviewing the code.
## License
MIT