Finding the perfect VPS server for Discourse (or any other web app)

This website runs on Discourse. It is a modern community platform, which can me adapted to many different kinds of use cases. Our implementation is pretty much vanilla, with only minor UI tweaks. Discourse is a modern web app built on Ruby on Rails. Unlike classic static websites, this is dynamic - new posts will appear on your browser in real-time, without you hitting the browser’s refresh function.

On a busy discussion forum, which we are not (yet), this is great feature and results in rapid chat like conversations. Questions, answers and arguments are traded in an instant, during a single session on the site. The end result is somewhat of a hybrid in between a classic (static) message board and an instant messaging platform (WhatsApp, Slack, Telegram…). Now this has one side effect for the webmaster - you’ll need some processing power on your server.

It’s a buyers market for servers. Prices are cheap and options near limitless. Here I present some great options for everyone planning to start with Discourse, or any other kind of website platform. A static WordPress site will need far less resources, but will also benefit from good hosting.

Discourse needs a minimum on 1GB RAM, so here I will be looking at the best offers to start with your new site.

##The gold standard: DigitalOcean

They are the gold standard. Huge in terms of market share. In this game size does matter. Good infrastructure, very reliable, flexible scaling of resources up to massive scale. Multiple data centers in North-America and Europe, but also one in India and Singapore. I have used them for years without major issues, so they are extremely reliable. They are also the default recommended option by Discourse developers.

Their downside of DO is that they are not the cheapest nor are their servers fastest. You’ll pay a bit of premium for the quality.

####VPSBench DigitalOcean 10$ / 1GB RAM/ 1-core / 30GB SSD

CPU model:  Intel(R) Xeon(R) CPU E5-2650L v3 @ 1.80GHz
Number of cores: 1
CPU frequency:  1797.917 MHz
Total amount of RAM: 992 MB
Total amount of swap:  MB
System uptime:   0 min,       
I/O speed:  453 MB/s
Bzip 25MB: 8.47s
Download 100MB file: 75.0MB/s

Website: DigitalOcean.com

##The runners-up:

DigitalOcean is always a good choice, but there are a ton of alternatives out there.

###UpCloud.com

UpCloud is an innovative start-up that hails from Helsinki, Finland. They are pricing their offering directly against DigitalOcean and aim to compete with performance. Indeed, their servers are fast, so you’ll get some more bang for the buck. I have used them for about 6 months for one large Discourse-based project and their reliability has been 100%. Datacenters are offered in the U.S., UK, Germany and Finland (1.5x cost).

####VPSBench: UpCloud 10$ / 1GB RAM/ 1-core / 30GB SSD

CPU model:  Intel(R) Xeon(R) CPU E5-2687W v3 @ 3.10GHz
Number of cores: 1
CPU frequency:  3099.982 MHz
Total amount of RAM: 992 MB
Total amount of swap:  MB
System uptime:   6 min,       
I/O speed:  412 MB/s
Bzip 25MB: 3.96s
Download 100MB file: 54.8MB/s

The benchmark reveals that UpCloud’s CPUs are indeed screaming fast. There is no significant disk I/O difference in comparison to DigitalOcean, at least not on this simple benchmark.

Website: UpCloud.com

###LeaseWeb

The dutch LeaseWeb is another operator that has large scale and has been around for a long time. Data centers in the Netherlands, Germany, U.S. and Singapore. They offer all kinds of services from bare metal to CDNs (Content Delivery Network) and all plans come with 24/7 tech support. I have started to use them recently and the initial expression is good. Their server management dashboard is rather spartan and does not even have scaling features. But they are here for two reasons: price and performance.

####VPSBench: LeaseWeb VPS S 4.95€ / 1GB RAM/ 1-core / 40GB SSD

CPU model:  QEMU Virtual CPU version 1.2.1
Number of cores: 1
CPU frequency:  2199.996 MHz
Total amount of RAM: 992 MB
Total amount of swap:  MB
System uptime:   8:23,       
I/O speed:  78.7 MB/s
Bzip 25MB: 4.83s
Download 100MB file: 116MB/s

The CPU is repoted as QEMU emulator, but pay attention to Bzip benchmark, which scores very nicely under 5 seconds.Disk I/O is slow, but they are using SAS drives with an SSD cache, so this may not represent a real life situation. So for just under 5 euros (excl-VAT), you’ll get a fast CPU and some more disk space from a reputable operator.

Website: LeaseWeb.com

###ScaleWay

This an innovative French subsidiary of Online.net. Their server infrastructure is built on low-power and miniature sized Intel Avoton (Atom) based servers. This allows even lower price points due to reduced power usage and more efficiently used rack space. The downside of this approach is lower CPU performance. Datacenters are offered in France and the Netherlands. I have used them for several months with good success.

####VPSBench: ScaleWay VC1S 2.99€ / 2GB RAM / 2-core / 50GB SSD

CPU model:  Intel(R) Atom(TM) CPU  C2750  @ 2.40GHz
Number of cores: 2
CPU frequency:  2393.902 MHz
Total amount of RAM: 2002 MB
Total amount of swap:  MB
System uptime:   4 min,       
I/O speed:  167 MB/s
Bzip 25MB: 10.74s
Download 100MB file: 101MB/s

The benchmarks reveal that they really are slow, but on the other hand you do get 2 CPU cores (non-hyperthreading), twice the RAM and the largest disk in the sub 10€/$ category. You will notice your Discourse site running a little slow, but it might be able to serve a slightly larger audience due to more RAM and 50GB’s of storage will get you a long way.

Website: ScaleWay.com

##Closing words

I am well aware that there are many good options out there, not included in this list. I chose these specific providers as they all bring something different to the table. Digital Ocean is a top notch operator, that everything else is compared to. UpCloud brings blazing speed, ScaleWay lots of resources for cheap and LeaseWeb is an excellent compromise for speed, capacity and price. All these I know by using them in production, so this is a skin in the game recommendation, not a copy-pasted list without real hands-on experience.

In addition to these I have also long term experience with OVH and Hetzner VPSs. The OVH has attractive price points and great CPU performance, but the disk sizes of the VPS SSD category are too small. Also their tech support leaves a lot to be desired. The Hetzner has a nicely balanced VPS offering for just 3.90€ with a DigitalOcean like performance and a 25GB disk. Their tech support is office hours only. In my opinion LeaseWeb offers a better deal overall (disk, performance, support, network size) with a slightly higher price tag, deserving to be on the list over Hetzner.

Share your own experiences and suggestions below. I will be coming back to this article too, in case I find new great hostings offers for you to try.

One Hetzner offer has to be added to the list:

####VPSBench: Hetzner CX20 6.90€ / 2GB RAM / 2-core / 50GB SSD

CPU model:  Intel(R) Xeon(R) CPU E5-26xx (Sandy Bridge)
Number of cores: 2
CPU frequency:  1999.999 MHz
Total amount of RAM: 2000 MB
Total amount of swap:  MB
System uptime:   20 days, 15:45,       
I/O speed:  512 MB/s
Bzip 25MB: 7.33s
Download 100MB file: 102MB/s

Hetzner is a well known German dedicated server provider, that also offers VPS. I already mentioned their smallest plan (CX10) in the opening post, but failed to mention their second plan the CX20. Priced at only 6.90€ (VAT inclusive) it matches the performance and resources of the 20$ Digital Ocean plan. With 2 CPU cores and 2GB RAM one can run a nicely active Discourse forum. The only data center location is Germany and their tech support is office hours only. But at this price, this is a bargain well worth considering if you already have some traffic.

Website: Hetzner.de

Well, it does not get any cheaper than this:

VPSBench: Arubacloud Cloud Server Smart, 1€ / 1GB RAM / 1-core / 20GB SSD

CPU model:  Intel(R) Xeon(R) CPU E5-2650L v3 @ 1.80GHz
Number of cores: 1
CPU frequency:  1799.998 MHz
Total amount of RAM: 992 MB
Total amount of swap:  MB
System uptime:   0 min,       
I/O speed:  921 MB/s
Bzip 25MB: 9.11s
Download 100MB file: 86.1MB/s

Aruba is an Italian service provider with a price to beat. For 1€ per month (excl. VAT) you get actually a decent VPS, with smallish SSD capacity. Their admin dashboard is terrible, customer communication partly in Italian and interestingly they promise only 99,80% uptime. Odd thing is that their French data center servers are quite a bit (30-40%) faster than our German example above. I made them one support ticket to test, and they have not responded in several days. But the server’s performance is fine so they are solid at least for testing and prototyping.

Website: ArubaCloud.com

Digital Ocean pricing upgrade:

The Digital Ocean announced new pricing for the year 2018. Most importantly for new development projects, their 5$ plan now has a 1GB RAM capacity, making it suitable for Discourse and other memory intensive web apps. This equals 50% discount, compared to the old pricing. Existing customers can resize their servers to the new upgraded capacities for free.

They have also diversified their selection with more options at 15$, intensive CPU load plans and lots of other goodies. In terms of reliability, the Digital Ocean is a top notch performer, so it is nice to see that they finally match their plans to the competition.

Check out their new pricing at: DigitalOcean.com