$10 Showdown: Linode vs. DigitalOcean vs. Amazon Lightsail

Yes, Linode announced a $5 plan. You can check out the $5 Showdown: Linode
vs. DigitalOcean vs. Lightsail vs. Vultr

Yes #2, Linode made some changes to their $10 plan, increasing the storage a
bit and kicking up their network out. I have updated the post to reflect the
network changes.

Amazon caught me off guard this week with a VPS offering that mirrors the
pricing of DigitalOcean and potentially rivals the quality of
Linode.

Curious how things compared, I am revisiting my last Linode vs.
DigitalOcean
post from July 2016 and bringing Lightsail in the mix.

Let the best VPS win!

Overview

Even though Lightsail is offering a 5 dollar plan, Linode does not. Because of
this, I am comparing hosting plans at the 10 dollar price point. Also, all of
the benchmarks were generated on Ubuntu 16.04 LTS system.

  Linode DigitalOcean Lightsail
Memory 2GB 1GB 1GB
Processor 1 Core 1 Core 1 Core
Storage 30GB SSD 30GB SSD 30GB SSD
Transfer 2TB 2TB 2TB
Overage $0.02/GB $0.02/GB $0.09/GB
Network In 40Gbps 1Gbps ???
Network Out 1000Mbps 1Gbps ???
Price $10/month $10/month $10/month
  $0.015/hour $0.015/hour $0.013/hour

If simply comparing plans, Linode wins if you need more RAM but lacks in storage
compared to both DigitalOcean and Amazon Lightsail.

What’s interesting to note is that Lightsail’s network overage is 4.5x that of
Linode and DigitalOcean. If you only need a server for a couple of hours,
Lightsail’s pricing is a few fractions of a cent better.

Unfortunately, I don’t have a reliable number for Amazon’s network throughput
for Lightsail. There is a network comparison later on though, so all is not
lost.

CPU

sysbench --test=cpu run
  Linode DigitalOcean Lightsail
Number of Events 10,000 10,000 10,000
Execution Time 12.6811s 14.8737s 11.5520s
Minimum Request 1.24ms 1.37ms 1.03ms
Average Request 1.27ms 1.49ms 1.16ms
Maximum Request 3.78ms 13.54ms 2.19ms

Lightsail is off to a good start clocking in a full second below Linode and even
moreso against DigitalOcean.

Memory (read)

sysbench --test=memory run
  Linode DigitalOcean Lightsail
Number of Events 104,857,600 104,857,600 104,857,600
Execution Time 47.7652s 96.0324s 72.7207s
Minimum Request 0.00ms 0.00ms 0.00ms
Average Request 0.00ms 0.00ms 0.00ms
Maximum Request 9.72ms 8.76ms 19.83ms
MB/sec 2,143.82 1,066.31 1,408.13

Linode reads from memory twice as fast as DigitalOcean and Lightsail ended up a
distant 2nd to Linode. Perhaps something to be said about having more RAM?

Memory (write)

sysbench --test=memory --memory-oper=write run
  Linode DigitalOcean Lightsail
Number of Events 104,857,600 104,857,600 104,857,600
Execution Time 47.0562s 74.9946s 72.1367s
Minimum Request 0.00ms 0.00ms 0.00ms
Average Request 0.00ms 0.00ms 0.00ms
Maximum Request 9.33ms 4.05ms 0.33ms
MB/sec 2,176.12 1,084.67 1,419.53

Aside from DigitalOcean, the other hosting providers showed write speeds
consistent with the read speeds. What’s interesting is that Amazon’s maximum
request was absurdly low compared to Linode yet somehow couldn’t process as many
megabytes per second.

File I/O

sysbench --test=fileio prepare
sysbench --test=fileio --file-test-mode=rndrw run
sysbench --test=fileio cleanup
  Linode DigitalOcean Lightsail
Number of Events 10,000 10,000 10,000
Execution Time 0.9361s 1.8158s 4.9561s
Minimum Request 0.00ms 0.00ms 0.00ms
Average Request 0.04ms 0.08ms 0.14ms
Maximum Request 4.10ms 4.53ms 3.52ms
Requests/sec 10,682.79 5,507.67 2,017.73

Linode’s SSD is nearly twice as fast as DigitalOcean’s. DigitalOcean’s SSD is
more than double the speed of Amazon Lightsail’s.

Question is, do you want more space or faster disk access?

OLTP with MySQL

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
Number of Events 10,000 10,000 10,000
Execution Time 31.6980s 54.2631s 46.3136s
Minimum Request 2.27ms 3.10ms 2.22ms
Average Request 3.16ms 5.42ms 4.63ms
Maximum Request 15.77ms 40.84ms 85.15ms
Read/write Requests/sec 5,994.07 3,501.46 4,097.89

Amazon performed better than DigitalOcean but not nearly as well as Linode.
Amazon had slightly better minimum request time but the maximum request time was
double that of DigitalOcean’s. Linode’s min and max request times have a
significantly tighter range.

Network

Network speed benchmarks are generated by speedtest-cli.

Out of the gate, DigitalOcean touts a significantly faster network and I don’t
have any numbers for Amazon Lightsail. If anybody knows what Amazon is offering
network-wise with Lightsail, please comment below.

  Linode DigitalOcean Lightsail
Download Mbit/sec 1,895.03 844.65 161.76
Upload Mbit/sec 456.75 441.93 385.58

SpeedTest.net picks different servers each time, so it’s hard to get an apples
to apples comparison. Amazon’s download speed was pretty horribad
compared to both DigitalOcean and Linode. Upload on the otherhand, Linode
followed by DigitalOcean were neck and neck with Amazon bringing up the rear.

Conclusion

Not too far off from my previous posts, Linode seems to be the all around best
bet. DigitalOcean and Amazon Lightsail are for the most part equivalent at the
10 dollar price point.

Between DigitalOcean and Lightsail, you would need to prioritize between memory
and file I/O. Based on Amazon’s overage pricing, I would favor DigitalOcean.

A couple of non-benchmark things worth mentioning. First, and perhaps this is
more of a self-serving sentiment, but Amazon does not offer any sort of
affiliate program for Lightsail or any other of their web services.

The other thing is that Amazon does not offer free DNS hosting. Their service is
negligibly priced at 40 cents per million queries. I have no idea how many DNS
queries per month any of my sites do. I do know that I don’t spend anything on
DNS hosting with Linode or DigitalOcean or even CloudFlare.

Amendment I ended up focusing on the fact that Amazon is charging at all for
DNS and failed to realize that you do get up to 3 DNS zones and unlimited
records for free. You get 3 million queries per month and anything above that is
$0.40 per million queries. Still not entirely free but based on your DNS volume
it is probably sufficient.

As always, your mileage may vary based on your own requirements. As for me, I’m
still happy with Linode and Amazon’s recent VPS offering doesn’t sway me at all.

If you happen to find this post helpful when deciding on your next hosting
solution, I’ll love you forever if you sign up using my referral links for
Linode and DigitalOcean.

As mentioned, Amazon doesn’t do the whole affiliate thing, but you could grab me
something cheap from my Amazon Wish List or even better, be a real
MVP and make a donation to the Wounded Warrior Project.

And as always if you end up signing up, hit me up on Twitter and let
me know about it!


If you have found these posts informative and helpful in searching for a new hosting provider, please consider using one of the links below when signing up:

  • DigitalOcean, new accounts receive $200 in credit (good for 60 days)
  • Linode, new accounts receive $100 in credit (also good for 60 days)
  • Vultr, new accounts also receive $100 in credit (good for only 14 days)
  • UpCloud, new accounts receive €25 in credit (yes, that’s in Euros)
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.