Benchmark tussen DigitalOcean, Linode, Vultr, OVH en Hetzner VPS's

We zoeken via een aantal benchmarks uit welke cloud provider de snelste VPS levert.

Benchmark tussen DigitalOcean, Linode, Vultr, OVH en Hetzner VPS's

Cloud providers vergelijken kan onmogelijk in een blogpost. Er zijn tal van factoren waarop cloud providers zich van elkaar onderscheiden. Denk maar aan prijs, geografische beschikbaarheid, aangeboden diensten, ondersteuning, performantie, enzovoort.

Cloud providers in allerlei maten en gewichten

Cloud providers zijn er in allerlei maten en gewichten. Een groep van "hyperscalers" bedient de rote ondernemingen en overheidsinstellingen. Denk hierbij aan Amazon AWS, Google Cloud en Microsoft Azure. Zij hebben wereldwijd tal van eigen datacentra om hun servers en netwerken te huisvesten.

Daarnaast bestaan de cloud providers wat zich richten op het middensegment, denk daarbij aan DigitalOcean, Linode, Vultr, OVH, UpCloud en Hetzner. Zij maken meestal - ook niet altijd - gebruik van bestaande datacentra waarin zij een ruimte huren om hun diensten uit te bouwen. Omdat ze dit op kleinere schaal doen en vaak geen volledige datacentra moeten onderhouden, kunnen zij vaak ook wereldwijd hun diensten aanbieden.

Als laatste, maar zeker niet als "minst belangrijke", vinden we de lokale cloud providers. Onder "lokaal" verstaan we de providers wat zich richten op een regionaal of klein internationaal publiek. Hierbij denken we aan tal van lokale providers zoals PCextreme, Combell, Snel.com en TransIP. Sommigen bouwden en onderhouden hun eigen datacentrum en servers, anderen liften mee op bestaande infrastructuur maar bouwden bijvoorbeeld wel hun eigen netwerk vanaf de grond op.

Zomaar een vergelijking opgooien tussen cloud providers, dat is dus bijna zoals appelen en peren vergelijken. Elke cloud provider bedient zijn eigen specifieke segment van de markt, elk op zijn eigen manier.

Wat we gaan vergelijken

In deze blogpost richten we ons op de technische vergelijking van het aanbod van enkele cloud providers uit het middensegment. Is dit een complete vergelijking? Neen, verre van. Wanneer je de keuze maakt voor een cloud provider, dan spelen veel meer factoren mee. Denk maar aan de prijs, de expertise van de provider, de stabiliteit van het platform en het netwerk, back-up mogelijkheden, de extra diensten zoals Kubernetes of gehoste databanken, de bereikbaarheid en het service niveau van de support desk. Om er maar enkele te noemen.

We focussen ons in deze vergelijking enkel en alleen op het technisch meetbare. Benchmarks dus. We nemen enkele, volgens het aanbod, technisch gelijkwaardige VPS's van een aantal providers en voeren daarop benchmarks uit.

Zo krijgen we een beeld van de performantie wat we kunnen verwachten. Maar nogmaals: de keuze van een cloud provider gaat veel verder dan alleen een technische benchmark. Maar, het is een start.

Deze vergelijking is gemaakt in juni 2022. Het aanbod, de technische kenmerken en de onderliggende hardware kunnen - en zullen - in de toekomst zeker veranderen.

We vergelijken het huidige aanbod van "gedeelde resources" VPS's van Hetzner, DigitalOcean, Linode, OVH en Vultr. VPS's met "gedeelde resources' hebben geen gegarandeerde resources (zoals CPU), maar delen dit met alle VPS's wat op de hypervisor draaien. Hierdoor kan een cloud provider meer VPS's op een hypervisor plaatsen, wat resulteert in een lagere kostprijs. De gedeelde resources VPS's zijn een ideale prijs/kwaliteit oplossing, als men rekening houdt met het feit dat de resources kunnen fluctueren doorheen de dag.

We namen telkens een VPS met 2 vCPU's en 4 GB RAM geheugen en kozen voor een Intel CPU als we de keuze kregen. De kostprijs ex. btw kwam neer op (USD werd omgerekend naar Euro):

Provider Prijs / maand
Hetzner € 4,9
DigitalOcean € 18,9
Linode € 18,9
OVH € 4,9
Vultr € 18,9

De gebruikte benchmarks

We voerden de benchmarks telkens uit op een Ubuntu 22.04 LTS installatie waarbij we gebruik maakten van de image wat door de cloud provider standaard aangeboden werd. Op het OS voerden we geen aanpassingen uit, we zorgden enkel dat het systeem up-to-date was.

Voor de benchmarks, gebruikten we Phoronix Test Suite v10.8.3. Telkens werden er minimaal drie tests doorlopen. De getoonde resultaten zijn steeds de gemiddelden van de tests. Wanneer de resultaten een afwijking (deviation) groter dan 3,5% hadden, dan werd de test opnieuw gedaan totdat de resultaten minder dan 3,5% van elkaar afweken.

De afwijking is belangrijk omdat deze VPS's bij alle providers op een gedeeld platform draaien. Zo is onder andere de CPU-tijd gedeeld tussen alle VPS's wat op die specifieke hypervisor draaien. Zoveel te meer VPS's de cloud provider op een hypervisor draait, zoveel te meer moet de CPU verdeelt worden over alle VPS's. Dus een hogere afwijking bij een CPU-test betekent dat de toegewezen CPU tijd fluctueert. Dit is echter een momentopname.

💡
De meeste cloud providers bieden ook VPS's aan met "gegarandeerde resources". Dan worden bijvoorbeeld een aantal vCPU cores voorbehouden voor jouw VPS. Dat resulteert in een directe en volle beschikbaarheid van de CPU. Maar deze VPS's zijn ook merkelijk duurder.

Resultaten

Benchmark: pts/apache (systeem)

This is a test of the Apache HTTPD web server. This Apache HTTPD web server benchmark test profile makes use of the Golang "Bombardier" program for facilitating the HTTP requests over a fixed period time with a configurable number of concurrent clients.

20 concurrent requests

Provider Avg. requests / second Deviation percentage
Hetzner 7832 0,2
DigitalOcean 6066 8,96
Linode 8191 1,38
OVH 8758 1,31
Vultr 9549 2,35

100 concurrent requests

Provider Avg. requests / second Deviation percentage
Hetzner 7897 0,2
DigitalOcean 6271 5,27
Linode 8391 1,38
OVH 8549 1,31
Vultr 9462 2,36

Benchmark: pts/apache-siege (system)

This is a test of the Apache web server performance being facilitated by the Siege web server benchmark program.

100 concurrent users

Provider TPS Deviation percentage
Hetzner 6469,58 1,73
DigitalOcean 4804,46 5,23
Linode 8040,02 2,94
OVH 6281,21 0,41
Vultr 7805,93 1,84

250 concurrent users

Provider TPS Deviation percentage
Hetzner 6188,7 0,65
DigitalOcean 4718,58 2,96
Linode 7225,88 0,44
OVH 6121,77 0,25
Vultr 7505,63 1,22

Benchmark: pts/phpbench (systeem)

PHPBench is a benchmark suite for PHP. It performs a large number of simple tests in order to bench various aspects of the PHP interpreter. PHPBench can be used to compare hardware, operating systems, PHP versions, PHP accelerators and caches, compiler options, etc.
Provider Avg. score Deviation percentage
Hetzner 458346 1,78
DigitalOcean 369716 1,96
Linode 479499 0,69
OVH 424739 1,56
Vultr 596612 0,18

Benchmark: pts/build-linux-kernel (CPU)

This test times how long it takes to build the Linux kernel in a default configuration (defconfig) for the architecture being tested.
Provider Seconds Deviation percentage
Hetzner 872 1,65
DigitalOcean 1100 1,62
Linode 642 0,53
OVH 925 0,33
Vultr 636 0,37

Benchmark: pts/stream (RAM)

This is a benchmark of Stream, the popular system memory (RAM) benchmark.

Type: copy

Provider MB per second Deviation percentage
Hetzner 21125,9 10,73
DigitalOcean 17871,5 1,54
Linode 36640,9 2,07
OVH 33142,8 5,8
Vultr 20551,9 0,11

Type: add

Provider MB per second Deviation percentage
Hetzner 23963,9 0,89
DigitalOcean 17396,2 1,27
Linode 23140,5 1,1
OVH 21939,8 0,39
Vultr 20767,8 0,6

Benchmark: pts/blogbench (storage)

Bench is designed to replicate the load of a real-world busy file server by stressing the file-system with multiple threads of random reads, writes, and rewrites. The behavior is mimicked of that of a blog by creating blogs with content and pictures, modifying blog posts, adding comments to these blogs, and then reading the content of the blogs. All of these blogs generated are created locally with fake content and pictures.

Read

Provider Score Deviation percentage
Hetzner 274307 4,15
DigitalOcean 230165 1,5
Linode 275483 4,91
OVH 219068 5,02
Vultr 229746 0,96

Write

Provider Score Deviation percentage
Hetzner 3723 2,25
DigitalOcean 2217 6,98
Linode 3537 4,17
OVH 9937 0,29
Vultr 8647 1,05

Benchmark: pts/postmark (storage)

This is a test of NetApp's PostMark benchmark designed to simulate small-file testing similar to the tasks endured by web and mail servers. This test profile will set PostMark to perform 25,000 transactions with 500 files simultaneously with the file sizes ranging between 5 and 512 kilobytes.

TPS = Transactions Per Second

Provider TPS Deviation percentage
Hetzner 2631 1,05
DigitalOcean 1937 3,06
Linode 4195 2,41
OVH 2737 0,63
Vultr 3317 2,19