User Tools

Site Tools


Rapid measurement of file downloads

Perl Mojolicious

Code https://github.com/onborodin/dbstore, https://github.com/onborodin/dbstore/blob/master/dbstore.pl.in#L367

Load averages: 1.12, 0.75, 0.47

# ab -c 50 -n 200 -A master:password 'https://thx.unix7.org:8184/data/get?name=data.bin'
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient)
Completed 100 requests
Completed 200 requests
Finished 200 requests


Server Software:        Mojolicious
Server Hostname:        thx.unix7.org
Server Port:            8184
SSL/TLS Protocol:       TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,2048,128
TLS Server Name:        thx.unix7.org

Document Path:          /data/get?name=data.bin
Document Length:        1048576 bytes

Concurrency Level:      50
Time taken for tests:   3.426 seconds
Complete requests:      200
Failed requests:        0
Total transferred:      209759200 bytes
HTML transferred:       209715200 bytes
Requests per second:    58.37 [#/sec] (mean)
Time per request:       856.584 [ms] (mean)
Time per request:       17.132 [ms] (mean, across all concurrent requests)
Transfer rate:          59784.83 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       14  303 302.2    152    1035
Processing:   114  515 242.8    494    1125
Waiting:        7   64  56.7     44     216
Total:        163  818 387.7    743    1603

Percentage of the requests served within a certain time (ms)
  50%    743
  66%   1124
  75%   1160
  80%   1185
  90%   1428
  95%   1444
  98%   1458
  99%   1462
 100%   1603 (longest request)

Pure nginx

Load averages: 1.58, 0.92, 0.54

# ab -c 50 -n 200 'https://pure.unix7.org/data.bin'
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking pure.unix7.org (be patient)
Completed 100 requests
Completed 200 requests
Finished 200 requests

Server Software:        nginx/1.14.0
Server Hostname:        pure.unix7.org
Server Port:            443
SSL/TLS Protocol:       TLSv1.2,ECDHE-RSA-AES256-GCM-SHA384,2048,256
TLS Server Name:        pure.unix7.org

Document Path:          /data.bin
Document Length:        1048576 bytes

Concurrency Level:      50
Time taken for tests:   1.459 seconds
Complete requests:      200
Failed requests:        0
Total transferred:      209766200 bytes
HTML transferred:       209715200 bytes
Requests per second:    137.11 [#/sec] (mean)
Time per request:       364.663 [ms] (mean)
Time per request:       7.293 [ms] (mean, across all concurrent requests)
Transfer rate:          140437.56 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        8  202  81.9    209     418
Processing:    12  138 103.5    124     627
Waiting:        1   75  60.9     51     240
Total:        120  340 142.5    326     854

Percentage of the requests served within a certain time (ms)
  50%    326
  66%    407
  75%    427
  80%    437
  90%    490
  95%    622
  98%    790
  99%    853
 100%    854 (longest request)

First PagePrevious PageBack to overviewNext PageLast Page