22 Nov, 2016
Apache Benckmark: Tested using ab ( https://httpd.apache.org/docs/2.4/programs/ab.html)
user@goo:~$ ab -n 1000 -c 1000 <snipped>
This is ApacheBench, Version 2.3 <$Revision: 1706008 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking <snipped>.ifcdata.mobi (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software: Apache/2.4.29
Server Hostname: <snipped>.ifcdata.mobi
Server Port: 80
Document Path: /igrid/flex
Document Length: 7762 bytes
Concurrency Level: 1000
Time taken for tests: 29.873 seconds
Complete requests: 1000
Failed requests: 19
(Connect: 0, Receive: 0, Length: 19, Exceptions: 0)
Non-2xx responses: 981
Total transferred: 8117775 bytes
HTML transferred: 7614522 bytes
Requests per second: 33.47 [#/sec] (mean)
Time per request: 29873.232 [ms] (mean)
Time per request: 29.873 [ms] (mean, across all concurrent requests)
Transfer rate: 265.37 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 182 375.8 27 1061
Processing: 32 1541 3841.1 442 29862
Waiting: 0 1063 1961.9 394 15370
Total: 62 1723 3848.0 503 29862
Percentage of the requests served within a certain time (ms)
50% 503
66% 1604
75% 2007
80% 2097
90% 2882
95% 2994
98% 15402
99% 23281
100% 29862 (longest request)
Mysql Bench Mark: Tested using mysqlslap (https://dev.mysql.com/doc/refman/8.0/en/mysqlslap.html)
50 concurrent connections, and have the auto-generated query run 10 times
user@goo:/tmp/mysql/employees_db# sudo mysqlslap --user=root --password --host=localhost --concurrency=50 --iterations=100 --number-int-cols=5 --number-char-cols=20 --auto-generate-sql --verbose Enter password: Benchmark Average number of seconds to run all queries: 0.184 seconds Minimum number of seconds to run all queries: 0.154 seconds Maximum number of seconds to run all queries: 0.497 seconds Number of clients running queries: 50 Average number of queries per client: 0
Running a query against the deptemp table. The deptemp table has more than three hundred thousand records.
user@goo:/tmp/mysql/employees_db# sudo mysqlslap --user=root --password --host=localhost --concurrency=50 --iterations=10 --create-schema=employees --query="SELECT * FROM dept_emp;" --verbose Enter password: Benchmark Average number of seconds to run all queries: 3.271 seconds Minimum number of seconds to run all queries: 1.987 seconds Maximum number of seconds to run all queries: 11.845 seconds Number of clients running queries: 50 Average number of queries per client: 1
Speed Test Digital Ocean Bangalore vs S3 Mumbai
I wanted to test the upload and the download speeds between DigitalOcean Bangalore DC and S3 Mumbai for one of the products we are building. I also wanted to compare results between Bangalore, Mumbai and Singapore in where both AWS and DO have their DC’s. Tested on a 70MBPS ACT connection.
100MB.bin
File downloaded from DigitalOcean was taken from their speed test page.
Bangalore Test file.
http://speedtest-blr1.digitalocean.com/
Singapore Test File.
http://speedtest-sgp1.digitalocean.com
S3, I used my private buckets in Mumbai and Singapore.
Results
Interestingly from Chennai(i guess from Bangalore as well), Singapore S3 bucket has a average download speed of 4626k, next comes S3 Mumbai, with DO Bangalore placed at 3rd.
$ time curl -O http://speedtest-blr1.digitalocean.com/100mb.test
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 100M 100 100M 0 0 3964k 0 0:00:25 0:00:25 --:--:-- 3977k
real 0m25.910s
user 0m0.244s
sys 0m1.192s
$ time curl -O https://s3.ap-south-1.amazonaws.com/mumbai/100mb.test
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 100M 100 100M 0 0 4159k 0 0:00:24 0:00:24 --:--:-- 3181k
real 0m24.698s
user 0m0.419s
sys 0m1.069s
$ time curl -O http://speedtest-sgp1.digitalocean.com/100mb.test
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 100M 100 100M 0 0 2836k 0 0:00:36 0:00:36 --:--:-- 3195k
real 0m36.183s
user 0m0.227s
sys 0m1.087s
$ time curl -O https://s3-ap-southeast-1.amazonaws.com/singapore/100mb.test
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 100M 100 100M 0 0 4626k 0 0:00:22 0:00:22 --:--:-- 5009k
real 0m22.223s
user 0m0.379s
sys 0m1.009s
Uploads
I ran upload test with the same downloaded file to Mumbai and Singapore S3. I don't have DigitalOcean account, so was not able to test by uploading to their Bangalore and Singapore Storage service for now.
It took 1.85 secs to mumbai and 1.05 to singapore S3 buckets respectively.
$ time aws s3 cp 100mb.test s3://mumbai upload: ./100mb.test to s3://xxxxx/100mb.test real 1m8.527s user 0m3.392s sys 0m1.043s $ time aws s3 cp 100mb.test s3://singapore upload: ./100mb.test to s3://singapore/100mb.test real 1m0.516s user 0m3.293s sys 0m0.939s
Summarise
S3 seems to be faster for the above tests within India, Singapore seems faster from south India, faster than Digital Ocean Bangalore data center.
