VPS Showdown – April 2019 – DigitalOcean vs. Lightsail vs. Linode vs. UpCloud vs. Vultr

No April foolin’ here, it’s a new month AND I’ve added another provider to the
mix, UpCloud.

Based on the fact that UpCloud doesn’t currently have a New York data center at
this time, I went ahead and opted to pick west coast data centers for each of
the providers. Most are in or around San Francisco with AWS Lightsail still
being the outlier in Oregon.

Each set of benchmarks is performed on 3 different server instances, each
running Ubuntu 18.04 LTS, and the results are averaged together.

Overview

  DigitalOcean Lightsail Linode UpCloud Vultr
Location San Francisco 2 Oregon, Zone A Fremont, CA San Jose #1 Silicon Valley
RAM 1 GB 1 GB 1 GB 1 GB 1 GB
CPU 1 Core 1 Core 1 Core 1 Core 1 Core
Storage 25 GB 40 GB 25 GB 25 GB 25 GB
Transfer 1 TB 2 TB 1 TB 1 TB 1 TB

CPU Info

  DigitalOcean Lightsail Linode UpCloud Vultr
CPU MHz 2231.54 2400.04 2000.00 2992.98 2400.00
Cache Size (KB) 28928.00 30720.00 512.00 16384.00 16384.00
BogoMips 2996.33 3200.33 2667.00 3990.33 3199.67

CPU

  DigitalOcean Lightsail Linode UpCloud Vultr
Events per Second 904.66 873.81 1257.85 1260.81 828.71
Minimum (ms) 1.08 1.03 0.77 0.78 1.10
Average (ms) 1.12 1.15 0.79 0.79 1.21
Maximum (ms) 1.82 1.31 1.50 3.25 10.14

Memory (Read)

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3682907.10 842819.29 3795296.37 5026068.19 3505163.34
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00 0.00
Maximum (ms) 0.25 0.10 0.52 0.62 5.75

Memory (Write)

  DigitalOcean Lightsail Linode UpCloud Vultr
Ops per Second 3677688.41 833465.01 3789576.83 5023436.63 3432094.80
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.00 0.00 0.00 0.00 0.00
Maximum (ms) 0.46 4.24 1.05 1.95 4.94

File I/O

  DigitalOcean Lightsail Linode UpCloud Vultr
Reads per Second 2281.54 1359.68 1670.98 4150.03 2007.68
Writes per Second 1521.03 906.45 1113.98 2766.64 1338.48
Fsyncs per Second 4861.01 2890.11 3559.35 8847.16 4274.78
Minimum (ms) 0.00 0.00 0.00 0.00 0.00
Average (ms) 0.13 0.19 0.16 0.06 0.13
Maximum (ms) 33.59 10.41 24.59 4.64 13.46

MySQL

  DigitalOcean Lightsail Linode UpCloud Vultr
Transactions per Second 3481.33 2299.33 2953.00 5774.33 3059.67
Queries per Second 69626.67 45986.67 59060.00 115486.67 61193.33
Minimum (ms) 1.77 2.33 2.32 1.19 2.02
Average (ms) 2.89 4.38 3.39 1.73 3.30
Maximum (ms) 48.93 42.75 18.31 20.29 41.26

Speed Test

  DigitalOcean Lightsail Linode UpCloud Vultr
Distance (km) 2388.14 2573.93 2372.79 945.23 2357.97
Latency (ms) 51.612 73.957 57.426 73.204 52.672
Download (Mbit/s) 1325.05 239.03 403.42 270.03 269.15
Upload (Mbit/s) 499.97 167.39 309.85 238.79 492.33

Apache Benchmark (against nginx on the servers)

  DigitalOcean Lightsail Linode UpCloud Vultr
Requests per Second 264.82 278.88 295.23 282.93 216.94
Time per Request (ms) (mean) 1900.93 1795.70 1695.02 1768.52 2683.55
Transfer Rate (Kbyte/sec) 222.15 233.95 247.66 237.34 181.98

Conclusion

For their first inclusion in my VPS Showdown series, UpCloud definitely shined.
They outperformed in nearly every single category, sometimes nearly doubling the
results of the other providers.

DigitalOcean still put up some great numbers overall while also outperforming in
the speed test with Linode starting to creep back up on some of the metrics.

If storage and transfer are your only concern, Lightsail’s offering is
definitely where it’s at with double the bandwidth and nearly double the storage
for the money.

As it was my first experience using UpCloud’s UI, it’s worth noting, that while
looking quite modern and having some modern features, I felt it was a bit slow.
Specifically the process of spinning up a new server instance took several
minutes, most of which was spent waiting patiently.

Something I also found peculiar, because I had never noticed it before in past
reviews, is that the Speed Test tool reported the UpCloud servers as being a ton
closer to the University of Texas at Austin than the other providers.

When I had first noticed this, it sparked me to run another set of benchmarks on
UpCloud because I thought that I may have fucked up and created some or all of
the servers in the wrong data center. Turns out, the same thing happened with
the next batch of benchmarks as well.

While a bit unnerving, I’m going to assume that the issue is with how Speed Test
determines location based on your IP address and not that UpCloud is doing
anything shifty. The fail over to Speed Test’s “internally developed method” to
determine location is to use GeoIP data from MaxMind which I’ve used before and
sometimes the data just isn’t accurate, especially if you aren’t using the
latest data from MaxMind.

Also noticed that one of the three instances I spun up with Linode was a
different distance away. I’ll be keeping an eye on this particular metric moving
forward and hopefully next month will be a bit more consistent.

As always, if you found this comparison of VPS providers helpful, please use one
(or all) of my referral links below.

No promises, but I’m still hoping to add in additional providers more regularly,
so keep on commenting about your favorite hosting company that’s not currently
included.

Josh Sherman - The Man, The Myth, The Avatar

About Josh

Husband. Father. Pug dad. Musician. Founder of Holiday API, Head of Engineering and Emoji Specialist at Mailshake, and author of the best damn Lorem Ipsum Library for PHP.


If you found this article helpful, please consider buying me a coffee.