httpress
A fast HTTP benchmarking tool built in Rust.
Installation
Or from source:
Usage
# Basic benchmark (10 concurrent connections, infinite loop)
# Fixed number of requests
# Fixed total duration
# POST with body and headers
Options
| Flag | Description | Default |
|---|---|---|
-n, --requests |
Total number of requests | - |
-d, --duration |
Test duration (e.g. 10s, 1m) | - |
-c, --concurrency |
Concurrent connections | 10 |
-m, --method |
HTTP method | GET |
-H, --header |
HTTP header (repeatable) | - |
-b, --body |
Request body | - |
-t, --timeout |
Request timeout in seconds | 30 |
Example Output
-> httpress http://127.0.0.1:3000 -n 1000 -c 10
Target: http://127.0.0.1:3000 Get
Concurrency: 10
Stop condition: Requests(1000)
Starting benchmark with 10 workers...
Requests: 1000 total, 1000 success, 0 errors
Duration: 0.06s
Throughput: 16185.07 req/s
Latency:
Min: 245us
Max: 2.41ms
Mean: 612us
p50: 544us
p90: 955us
p95: 1.08ms
p99: 1.61ms
Status codes:
200: 1000
Development
# Run the test server
# In another terminal, run benchmarks