Not a ton of movement since last month, other than DigitalOcean’s announcement
of their memory-optimized droplets being generally available.
I decided to bring things back state-side again, targeting the west coast data
centers for each provider.
As always, I’m using Ubuntu 18.04 LTS for the operating system and the metrics
below are the average of running benchmarks on 3 separate instances.
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 SSD |
40 GB SSD |
25 GB SSD |
25 GB SSD |
32GB NVMe |
Transfer |
1 TB |
2 TB |
1 TB |
1 TB |
1 TB |
Base Price |
$5/month |
$5/month |
$5/month |
$5/month |
$6/month |
Backups |
$1/month |
N/A |
$2/month |
$0.06/GB |
$1.20/month |
Transfer Overage |
$0.01/GB |
$0.09/GB |
$0.02/GB |
$0.056/GB |
$0.01/GB |
Load Balancer |
$10/month |
$18/month |
$10/month |
N/A |
N/A |
Block Storage |
$0.10/GB |
$0.10/GB |
$0.10/GB |
$0.223/GB |
$0.10/GB |
CPU Info
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
CPU MHz |
2294.61 |
2400.07 |
2200.00 |
2992.97 |
3792.00 |
Cache Size (KB) |
25344.00 |
30720.00 |
11093.33 |
16384.00 |
16384.00 |
BogoMips |
3059.67 |
3200.33 |
2866.33 |
3990.33 |
5056.33 |
CPU
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Events per Second |
1005.84 |
874.34 |
924.02 |
1203.79 |
1255.63 |
Minimum (ms) |
0.92 |
1.03 |
1.11 |
0.78 |
0.74 |
Average (ms) |
0.99 |
1.14 |
1.13 |
0.83 |
0.79 |
Maximum (ms) |
1.93 |
1.80 |
3.04 |
152.49 |
1.33 |
Memory (Read)
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Ops per Second |
3965494.40 |
837273.56 |
3456481.27 |
4641479.71 |
5146603.45 |
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.29 |
3.33 |
2.12 |
65.11 |
0.34 |
Memory (Write)
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Ops per Second |
3963600.14 |
832767.42 |
3461369.81 |
4666715.41 |
5099145.58 |
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.94 |
7.47 |
2.12 |
24.17 |
0.69 |
File I/O
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Reads per Second |
1560.71 |
1232.05 |
1857.68 |
3983.20 |
4363.38 |
Writes per Second |
1040.44 |
821.36 |
1238.43 |
2655.47 |
2908.92 |
Fsyncs per Second |
3320.84 |
2620.07 |
3960.25 |
8492.74 |
9305.25 |
Minimum (ms) |
0.00 |
0.00 |
0.00 |
0.00 |
0.00 |
Average (ms) |
0.19 |
0.21 |
0.14 |
0.07 |
0.06 |
Maximum (ms) |
8.05 |
82.38 |
14.62 |
34.45 |
5.16 |
MySQL
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Transactions per Second |
1964.33 |
2068.33 |
3209.33 |
5528.00 |
5756.00 |
Queries per Second |
39286.67 |
41366.67 |
64186.67 |
110560.00 |
115120.00 |
Minimum (ms) |
2.40 |
2.36 |
2.19 |
1.26 |
1.24 |
Average (ms) |
5.69 |
4.86 |
3.19 |
1.92 |
1.74 |
Maximum (ms) |
668.31 |
39.11 |
19.04 |
18.18 |
16.09 |
Redis
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
PING_INLINE |
51967.11 |
55987.24 |
49241.33 |
69734.77 |
60371.84 |
PING_BULK |
51745.97 |
54011.31 |
47991.47 |
61022.92 |
59914.64 |
SET |
51972.08 |
55760.08 |
49758.36 |
66116.45 |
59443.67 |
GET |
51462.91 |
57304.68 |
48683.80 |
69686.45 |
61233.79 |
INCR |
51849.91 |
57840.73 |
49408.80 |
70138.77 |
60627.12 |
LPUSH |
52150.06 |
55756.51 |
47308.04 |
70651.22 |
61014.84 |
RPUSH |
51729.48 |
56014.83 |
48703.52 |
68769.02 |
61199.08 |
LPOP |
51808.76 |
55642.28 |
47576.14 |
68284.68 |
60136.65 |
RPOP |
51393.86 |
56793.26 |
48757.92 |
68353.87 |
59807.38 |
SADD |
52637.80 |
58259.88 |
48651.72 |
70245.29 |
61233.90 |
HSET |
52739.37 |
55690.74 |
48820.40 |
69410.35 |
59836.44 |
SPOP |
51674.08 |
58722.45 |
48664.36 |
69086.78 |
60381.24 |
LRANGE_100 (first 100 elements) |
29698.64 |
30700.17 |
24030.22 |
36266.54 |
34506.45 |
LRANGE_300 (first 300 elements) |
12264.51 |
12143.63 |
9467.60 |
16103.44 |
14684.28 |
LRANGE_500 (first 500 elements) |
8326.10 |
8533.22 |
6392.88 |
11069.14 |
10784.88 |
LRANGE_600 (first 600 elements) |
6659.50 |
6772.53 |
5125.97 |
8784.52 |
8886.75 |
MSET (10 keys) |
43391.45 |
40877.83 |
36398.87 |
61944.55 |
52810.22 |
Speed Test
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Distance (km) |
2134.46 |
2573.93 |
2372.79 |
1456.73 |
2357.97 |
Latency (ms) |
58.434 |
75.205 |
57.782 |
69.710 |
60.065 |
Download (Mbit/s) |
943.96 |
67.08 |
59.27 |
562.46 |
898.68 |
Upload (Mbit/s) |
380.06 |
55.57 |
314.48 |
111.84 |
326.54 |
Apache Benchmark (against nginx
on the servers)
|
DigitalOcean |
Lightsail |
Linode |
UpCloud |
Vultr |
Requests per Second |
280.41 |
232.30 |
295.41 |
294.77 |
249.71 |
Time per Request (ms) (mean) |
1788.33 |
2484.47 |
1692.60 |
1696.59 |
2034.86 |
Transfer Rate (Kbyte/sec) |
235.23 |
194.87 |
247.81 |
247.28 |
209.47 |
Conclusion
The Vultr High Frequency instances are still continuing to impress, even with
the trivially higher price tag. UpCloud has continued to do fairly well,
especially with the Redis benchmarks and DigitalOcean and Linode both shined in
network speed and Apache benchmarks respectively.
That said, from a user experience standpoint, both DigitalOcean and Vultr are
really leading the way. Linode’s new dashboard is an improvement, but still
missing the mark when it comes to spinning up multiple servers in one shot.
UpCloud’s interface feels like it’s a bit speedier than I remember, but I had
noticed a bug when creating a new instance, that allowed me to click the deploy
button twice, and I ended up creating more servers than I needed. Keep an eye
out for that one if you’re creating new servers.
As always, if you found this benchmarks to be helpful in your quest for a
hosting provider, please consider using one of my referral links below.