skip to content
Alvin Lucillo

Go stress testing with hey

/ 1 min read

💻 Tech

Hey can help with performing stress testing on you HTTP server

Install the go app: go install via: go install github.com/rakyll/hey@latest

Run hey: hey -n 10000 http://localhost:8081

Sample output:

Summary:
  Total:        0.1433 secs
  Slowest:      0.0080 secs
  Fastest:      0.0000 secs
  Average:      0.0007 secs
  Requests/sec: 69765.9472
  
  Total data:   190000 bytes
  Size/request: 19 bytes

Response time histogram:
  0.000 [1]     |
  0.001 [7709]  |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  0.002 [1086]  |■■■■■■
  0.002 [590]   |■■■
  0.003 [354]   |■■
  0.004 [141]   |
  0.005 [71]    |
  0.006 [20]    |
  0.006 [6]     |
  0.007 [15]    |
  0.008 [7]     |


Latency distribution:
  10% in 0.0001 secs
  25% in 0.0001 secs
  50% in 0.0003 secs
  75% in 0.0008 secs
  90% in 0.0018 secs
  95% in 0.0026 secs
  99% in 0.0042 secs

Details (average, fastest, slowest):
  DNS+dialup:   0.0000 secs, 0.0000 secs, 0.0080 secs
  DNS-lookup:   0.0000 secs, 0.0000 secs, 0.0005 secs
  req write:    0.0000 secs, 0.0000 secs, 0.0048 secs
  resp wait:    0.0004 secs, 0.0000 secs, 0.0039 secs
  resp read:    0.0002 secs, 0.0000 secs, 0.0046 secs

Status code distribution:
  [404] 10000 responses