An HTTP load testing receiver that can vary its response times.
100K+
A small node webservice to be used under HTTP load test. Use querystring parameters to modify how quickly (or not) the service responds.
cd docker-dangling-httpnpm inpm start or node indexbryanlatten/docker-dangling-httpdocker run --rm -p 3000:3000 bryanlatten/docker-dangling-httpdocker-machine IP + port (3000) or localhost:3000 (linux + docker4mac/win) with the following querystring variables, which may be combined:| Querystring | Name | Example | Default | Description |
|---|---|---|---|---|
| d | Delay | /?d=30 | 0 | Seconds to delay before HTTP response is sent |
| r | Random | /?r=30 | 0 | Adds time to delay, randomly, up to provided value |
| e | Empty | /?e=1 | 0 | Prematurely breaks HTTP connection, with empty response |
Note: service is running locally (on 127.0.0.1:3000) via npm start
$ curl 127.0.0.1:3000
[Response from 127.0.0.1]
- not delayed
$ curl 127.0.0.1:3000/\?d=30
[Response from 127.0.0.1]
- delayed 30s
$ curl 127.0.0.1:3000/\?d=10\&r=5
[Response from 127.0.0.1]
- adding 3s random delay (max 5s)
- delayed 13s
$ curl 127.0.0.1:3000/\?d=15\&e=1
curl: (52) Empty reply from server
Console log from the above request "broken" confirms:
Request from ::ffff:127.0.0.1, delayed 15s, prematurely breaking connection
$ ab -c 3 -n 10 127.0.0.1:3000/\?d=1
Results:
This is ApacheBench, Version 2.3 <$Revision: 1796539 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 127.0.0.1 (be patient).....done
Server Software:
Server Hostname: 127.0.0.1
Server Port: 3000
Document Path: /?d=1
Document Length: 40 bytes
Concurrency Level: 3
Time taken for tests: 4.009 seconds
Complete requests: 10
Failed requests: 0
Total transferred: 1380 bytes
HTML transferred: 400 bytes
Requests per second: 2.49 [#/sec] (mean)
Time per request: 1202.723 [ms] (mean)
Time per request: 400.908 [ms] (mean, across all concurrent requests)
Transfer rate: 0.34 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.1 0 0
Processing: 1002 1002 0.3 1002 1002
Waiting: 1001 1002 0.2 1002 1002
Total: 1002 1002 0.2 1002 1003
Percentage of the requests served within a certain time (ms)
50% 1002
66% 1002
75% 1002
80% 1002
90% 1003
95% 1003
98% 1003
99% 1003
100% 1003 (longest request)
Responds to HTTP traffic from standard benchmarking tools (ab, jmeter, gatling, locust.io)
kubernetes.yaml: sample Kubernetes Pod definitionContent type
Image
Digest
Size
24 MB
Last updated
almost 6 years ago
docker pull bryanlatten/docker-dangling-http