Damn Josh, back at it again with the VPS comparison!
It’s been a little more than 6 months since my last comparison post and a lot of
the recent feedback has been to refresh the data a bit more regularly.
The other major bit of feedback has been to include other hosting companies,
specifically OVH.
I had always been reluctant because they don’t have a $5 a month plan. It’s the
$5 showdown, AMIRITE?
Well I figured what the heck, I can just pivot to be the $5 OR LESS showdown. No
big deal.
Except there was a big deal.
I went to spin up a box with OVH and there was no way that I saw to just create
an account and get rockin’ and/or rollin’. They had a number I could call and
well, between you and me, it comes off like they probably want to sell me some
other stuff.
Maybe not, but I didn’t really want to talk to somebody on the phone to be able
to get a new server up and running. Real talk, until they make it easy to just
create an account and setup a server, I probably won’t be reviewing OVH.
With that and without further ado, that latest $5 VPS showdown!
Overview
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Location | Fremont, CA | San Francisco 2 | us-west-2 | Silicon Valley |
Memory | 1GB | 512MB | 512MB | 1024MB |
Processor | 1 Core | 1 Core | 1 Core | 1 Core |
Storage | 20GB SSD | 20GB SSD | 20GB SSD | 25GB SSD |
Transfer | 1TB | 1TB | 1TB | 10,00GB |
Overage | $0.02/GB | $0.02/GB | $0.09+/GB | $0.02+/GB |
Network In | 40Gbps | 1Gbps | ??? | ??? |
Network Out | 1,000Mbps | 1Gbps | ??? | ??? |
Price | $5/month | $5/month | $5/month | $5/month |
$0.0075/hour | $0.007/hour | $0.007/hour | $0.007/hour |
Wanted to switch things up and went with some west coast regions this go around.
Stuck with Ubuntu 16.04 LTS x64 as it was the distro that was available for each
of the companies featured in this post.
CPU Info
cat /proc/cpuinfo
Model Name | CPU MHz | Cache Size | BogoMips | |
---|---|---|---|---|
Linode | Intel(R) Xeon(R) CPU E5-2680 v2 | 2,799.998 | 4,096KB | 5,602.32 |
DigitalOcean | Intel(R) Xeon(R) CPU E5-2650 v4 | 2,199.998 | 30,720KB | 4,399.99 |
Lightsail | Intel(R) Xeon(R) CPU E5-2676 v3 | 2,400.074 | 30,720KB | 4,800.14 |
Vultr | Virtual CPU 714389bda930 | 2,399.996 | 16,384KB | 4,799.99 |
Linode clocks in with the fastest CPU speed, but also the smallest cache size.
DigitalOcean and Lightstail come in with nearly 8x the cache size!
CPU Benchmarks
sysbench --test=cpu run
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Number of Events | 10,000 | 10,000 | 10,000 | 10,000 |
Total Time | 13.8176s | 11.7794s | 11.5178s | 13.0596s |
Event Execution | 13.7994s | 11.7755s | 11.5157s | 13.0576s |
Minimum Request | 1.17ms | 1.16ms | 1.14ms | 1.29ms |
Average Request | 1.38ms | 1.18ms | 1.15ms | 1.31ms |
Maximum Request | 6.23ms | 3.14ms | 2.09ms | 9.16ms |
95th Percentile | 1.59ms | 1.20ms | 1.16ms | 1.33ms |
Generally speaking, it’s not often that I see a single hosting provider sweep an
entire category, but Amazon Lightsail did just that!
Memory Benchmarks
Memory Reads
sysbench --test=memory run
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Number of Events | 104,857,600 | 104,857,600 | 104,857,600 | 104,857,600 |
Total Time | 57.2181s | 80.7984s | 71.9762s | 58.3573s |
Execution Time | 47.5694s | 64.3537s | 57.4780s | 47.7048s |
Minimum Request | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Average Request | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Maximum Request | 14.88ms | 12.10ms | 0.18ms | 9.38ms |
95th Percentile | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Operations/sec | 1,826,213.10 | 1,297,769.02 | 1,456,836.71 | 1,796,820.35 |
MB/sec | 1,783.41 | 1,267.35 | 1,422.69 | 1,754.71 |
Aside from having the highest maximum request, Linode outperformed everybody
else in regard to reading from memory.
Memory Writes
sysbench --test=memory --memory-oper=write run
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Number of Events | 104,857,600 | 104,857,600 | 104,857,600 | 104,857,600 |
Total Time | 54.3722s | 80.8692s | 72.0132s | 58.2262s |
Execution Time | 45.0281 | 64.4024s | 57.5341s | 47.5836s |
Minimum Request | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Average Request | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Maximum Request | 8.10ms | 5.13ms | 2.65ms | 3.89ms |
95th Percentile | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Operations/sec | 1,928,514.56 | 1,296,631.88 | 1,456,089.13 | 1,800,865.15 |
MB/sec | 1,883.31 | 1,266.24 | 1,421.96 | 1,758.66 |
Similar to the memory reads results, Linode outperformed all comers!
File I/O Benchmarks
sysbench --test=fileio prepare
sysbench --test=fileio --file-test-mode=rndrw run
sysbench --test=fileio cleanup
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Number of Events | 10,000 | 10,000 | 10,000 | 10,000 |
Total Time | 11.3422s | 1.6405s | 4.8875s | 2.1791s |
Execution Time | 2.5127s | 0.6728s | 1.8940s | 1.1326s |
Minimum Request | 0.00ms | 0.00ms | 0.00ms | 0.00ms |
Average Request | 0.25ms | 0.00ms | 0.19ms | 0.11ms |
Maximum Request | 14.26ms | 5.20ms | 4.02ms | 5.54ms |
95th Percentile | 1.21ms | 0.13ms | 0.37ms | 0.25ms |
Requests/sec | 881.66 | 6,095.54 | 2,046.05 | 4,588.95 |
MB/sec | 13.776 | 95.243 | 31.970 | 71.702 |
DigitalOcean’s file input and output looked quite strong compared to the other
guys!
MySQL Benchmarks
mysql -uroot -e "CREATE DATABASE sbtest;"
sysbench --test=oltp --oltp-table-size=1000000 --mysql-user=root prepare
sysbench --test=oltp --oltp-table-size=1000000 --mysql-user=root run
sysbench --test=oltp --oltp-table-size=1000000 --mysql-user=root cleanup
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Number of Events | 10,000 | 10,000 | 10,000 | 10,000 |
Total Time | 89.3870s | 33.7841s | 41.2738s | 27.6786s |
Execution Time | 89.2571s | 33.7170s | 41.2225s | 27.6266s |
Minimum Request | 3.67ms | 2.06ms | 2.08ms | 2.22ms |
Average Request | 8.93ms | 3.37ms | 4.12ms | 2.76ms |
Maximum Request | 112.22ms | 202.13ms | 67.07ms | 19.02ms |
95th Percentile | 19.48ms | 4.68ms | 9.69ms | 3.03ms |
Read/write Requests/sec | 2,125.59 | 5,623.95 | 4,603.40 | 6,864.51 |
Even though DigitalOcean dominated file I/O and Linode dominated memory I/O,
Vultr was able to swoop in and strut it’s stuff with MySQL.
Apache Benchmarks
ab -kc 1000 -n 10000 http://127.0.0.1/
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Concurrency Level | 1,000 | 10,000 | 10,000 | 10,000 |
Time taken | 7.005s | 2.239s | 1.883s | 1.655s |
Completed Requests | 10,000 | 10,000 | 10,000 | 10,000 |
Failed Requests | 224 | 12 | 27 | 2 |
Requests/sec | 1,427.48 | 4,466.64 | 5,310.35 | 6,043.04 |
Time per request | 700.537ms | 223.882ms | 188.312ms | 165.480ms |
Transfer rate Kbyte/sec | 15,850.43 | 50,672.15 | 60,153.13 | 68,624.37 |
Following up on solid MySQL benchmarks, Vultr also did well in the apache
benchmarks when with having nearly half of the CPU cache as DigitalOcean and
Lightsail!
Network Benchmarks
./speedtest-cli --server=7340
Linode | DigitalOcean | Lightsail | Vultr | |
---|---|---|---|---|
Distance | 2,601.28km | 2,281.12km | 2,768.09km | 2,588.29km |
Ping | 72.95ms | 52.679ms | 78.194ms | 54.614ms |
Download Mbit/sec | 295.42 | 608.12 | 236.376 | 464.770 |
Upload Mbit/sec | 112.93 | 93.080 | 77.376 | 122.467 |
Vultr also touts their network speed but only came out ahead in the upload
category, DigitalOcean dominated the rest. Part of that if probably due to the
fact that DigitalOcean was closest to the server used for the speed test.
Conclusion
Like with all of my comparison posts, YMMV and you should really pick a host
that is going to play to the strengths of your project.
From this set of benchmarks, if you’re looking for a server that can handle CPU
intensive project, Lightsail seems right up your alley.
If you your project is memory intensive, input or output, Linode is a solid
choice.
For disk intensive tasks, DigitalOcean outperformed in nearly every category.
Vultr didn’t necessarily impress in regard to the raw operations, but seemed to
shine when it came to real world operations like Apache and MySQL performance.
Ready to sign up?
If this post swayed you to pull the trigger on a new server, I’d appreciate it
if you used my referral links below for Linode, DigitalOcean and/or Vultr.
Swole Jeff Bezos doesn’t believe in a referral program for AWS but if you’re
feeling particularly altruistic you could donate to Ubuntu
as that’s the Linux distro I used for this review.
What’s next?
Seems Vultr has a $2.50 plan, so expect a 512MB of RAM showdown in the very near
future. Also planning to explore some other hosting companies down the road and
try to get these posts refreshed a bit more regularly than every 6 months.