VPS vs Cloud – which should you use?

With “The Cloud” now being such a popular term, companies who need more power than a shared hosting account have to consider a VPS vs Cloud server, or even a dedicated server. But which is best for you?

In essence, VPS and Cloud servers give you the appearance of a dedicated server, but with a VPS you are only paying for part of the cost of a physical server, while with a Cloud server you have the ability to expand your resources rapidly.

VPS or Cloud server – what do you get?

With either a VPS, Cloud, or dedicated server, you will get your own Linux server. With most providers, you must sign on to the command line to install software and control the server. I’ll discuss some ‘fully-managed cloud’ options under hybrids below.

Yes, I’m deliberately ignoring the option to use Windows, and I may write a post about using Windows on AWS at some point, but for now, let’s assume you get a Linux server.

You sign on to this server and have full control, but also full responsibility. Depending on the provider, they may preinstall certain software, up to a full LAMP (Linux, Apache, MySQL, PHP) or LEMP (Linux, Nginx, MySQL, PHP) stack, but in most cases, you get a bare Linux server, and you have to install all the software you need.

For example, to run WordPress, you would need either a LAMP or LEMP stack, so you would install the Apache or Nginx web server, MySQL database server, and PHP. Then you would harden the server, install WordPress, and then your web site content.

VPS vs Cloud is not a useful comparison if you do not already have a good grasp of the Linux command line. There are many guides on installing a LAMP or LEMP stack (e.g. the perfect LEMP server), but if your goal is to get a business site running quickly, learning Linux to do this is not the best use of your time, so you should check out the hybrid options below.

VPS vs Cloud – what is a VPS?

A VPS (Virtual Private Server) server is a Linux server running inside a virtual machine, similar to how you can run a Linux server inside VirtualBox or Parallels on a laptop.

Advantages of a VPS Server

A VPS can be rented month to month or yearly, and generally costs more than Shared Hosting, but is usually cheaper than Cloud Hosting. They are usually simpler to spin up and have a fixed monthly cost, unlike Cloud Hosting.

The main advantages over a Cloud server are price and predictable billing, and over a Dedicated server just price. You are only getting a slice of a dedicated server, so you only pay a fraction of the cost of one.

Disadvantages of a VPS server

The clue to the downsides is in the name – this is a “Virtual” private server – it looks like you have your own private server, but really you are renting a slice of a physical server.

The first downside is that the performance of your server can suffer due to the other virtual machines on the same server. If the service provider puts too many clients on one physical server, or if one client’s code starts hogging all the CPU, your site can come to a halt. Most websites do not make use of the resources that they pay for during all hours, so some providers routinely oversell their servers, which can lead to intermittent slowdowns.

The second downside is also inherent in the design – you are paying for a part of a physical server, which itself has fixed resources, e.g. it might have 32 CPU cores and 128MB of RAM. You pick your desired number of CPU cores and size of RAM when setting up your VPS, and with most providers, you can increase this later and pay more.

However, when you want to increase your assigned resources even slightly, it is possible or even likely that the server that hosts your VPS will be full, with all available resources sold to other clients. In order to increase the size of your VPS, the provider would have to move your site to another server, which would take time.

The absolute limit for expansion is the full size of the server – if the host server has 32 CPU cores, then the most you can expand your server is up to 32 cores. Of course, at that point it would be much more cost-efficient to switch to a dedicated server, but your limit would still be the maximum number of cores on the largest physical server offered by your hosting provider.

VPS vs Cloud – what really is a Cloud Server?

I define a Cloud server as a Linux server you set up on one of the big Cloud providers like AWS, Azure, or Google GCP. Some shared hosting / VPS providers have their own definition which is basically a VPS where you can adjust the resources (and price) as needed (see hybrids below).

Advantages of a Cloud server vs VPS

When you rent a Cloud server from one of the large Cloud providers, you get two main advantages:

  • Stable resources: you do not have to worry about your site slowing down because of other users – you can use the resources you have paid for.
  • The ability to scale your site dramatically: currently you can set up a server on AWS with up to 96 CPUs (CPU cores) and up to 384GB RAM. This far exceeds the largest VPS you can rent, but of course at a very high price too.

For most large website applications, the true advantage of Cloud servers is not simply the ability to have a huge powerful server.

The best use of Cloud Hosting is to run multiple servers in the same data center, and spin up more when needed. You can have two or more web servers with a router to balance web traffic between them.

If you are using a CMS like WordPress, keeping the database on one server (or a managed cloud database) and the media in a shared location gives you the ability to spin up additional web servers as needed to handle traffic spikes.

Properly set up, secured, and maintained, a multi-server Cloud Hosting installation can give you the ultimate high-availability site with the ability to handle massive traffic spikes. However, this flexibility in power comes at a significant cost and requires expert staff to maintain.

Here is an article on Medium that discusses setting up a high availability WordPress site on AWS.

Disadvantages of a Cloud server

The first disadvantage is the difficulty to properly set up even a single server. If you think that the Linux command line is a stretch, then you’ve seen nothing yet. The number of different services offered by AWS for example, is quite overwhelming at first. Again, you can find scripts to help, but getting your first AWS server involves at least

  • creating an EC2 instance
  • dealing with the key pair
  • defining a security group
  • setting up an Elastic IP address

The end result can be very secure and flexible, but it is also easy to make mistakes.

The second main disadvantage of a Cloud server is the unpredictability of the cost. After you have been running for a few months, the bills will settle down and you will know what it is regularly costing you, but it is easy to spin up and pay for a service that you don’t need. AWS offers a Pricing Calculator where you can try to estimate your costs beforehand, but I’ve not found it to be too useful.

See also Cloud Hosting vs Shared Hosting for more discussion of Cloud servers.

What is a Dedicated Server?

With a dedicated server, you purchase or lease an entire physical computer, sized in a way that you hope is appropriate. You can sign on to this server and have full control to install and run the software that you chose, but also full responsibility.

Advantages of a Dedicated server

What’s not to like? – you have full control of a physical server with a high-speed internet connection. You do not have any concerns about other virtual machines killing your performance, and you have a very predictable bill. You can even install virtualization software, and run multiple virtual servers.

Disadvantages of a Dedicated server

The main disadvantage of a Dedicated server is the price. In the past, I have been able to get good deals on older but powerful dedicated servers (as low as $60/month), and these have worked very well, but you can easily pay more than $200/month for a decent size server.

A lesser disadvantage is that when you need a bigger server, it takes time and effort to acquire the bigger server and to transfer your site. If your business requirements reduce, you are either stuck with the fixed cost for the server, or you can do the work again to switch back to a smaller server.

VPS vs Cloud – what about a Hybrid?

Nothing is ever simple with hosting, so of course you can get cross-over offers.

Amazon LightSail

AWS offers a fixed-price, fixed-resource server product called LightSail, where they mask most of the complexity in spinning up a server, including pre-installing products like WordPress.

You can still incur extra costs if you exceed data-transfer limits, and once the server is running, you do have to sign on the the command line to control the server.

SiteGround Cloud Hosting

In addition to Shared Hosting Plans, SiteGround offers Cloud Hosting, where you can adjust the CPU and RAM as required, although at some cost. This plan is a fully-managed server, so you don’t have to learn Linux to install software or manage the server.

VPS vs Cloud

Using SiteGround Cloud Hosting, you can spin up a Cloud server with SSL and WordPress installed without touching the command line at all.

One of the great unique features with SiteGround Cloud Hosting is their autoscale option, where you can set the server to automatically resize if it becomes resource-constrained.

See this post for a full review of the SiteGround VPS / Cloud Hosting plan. It’s also worth noting that SiteGround shared hosting accounts are set up on Google Cloud servers, so even a cheap shared hosting account is running on a Cloud Host!

Cloudways

Cloudways is an interesting service where you sign up with them for a fully-managed Cloud hosting service, but you can specify where to provision your VPS from a choice of five VPS providers (including Google and AWS).

You can access your VPS via ssh if you want to (but without root access), but mainly you will use the Cloudways console to install software, SSL certificates, etc. without needing to use the Linux command line.

Again with Cloudways, you can spin up a Cloud server with SSL and WordPress installed without touching the command line at all.

Other hybrid options

Even in the VPS world, you can get levels of support and price. For example, A2 Hosting has a wide range of VPS options, from a basic option where you do everything, up to a Managed VPS with Cpanel, where you get point-and-click software installs, and support staff to help you and keep the server running and maintained, but you can also have root access to sign on and tweak the system.

For more on Cloud Hosting, see: Cloud Hosting vs Shared Hosting

VPS vs Cloud – the bottom Line

There are steps of power available to you, basically in this order:

  • Shared Hosting
  • VPS
  • Dedicated Server
  • Cloud Hosting

Within each step, you can get a range of power, based on how much you want to spend, and certainly there is overlap – an expensive, powerful Shared Hosting account will have more power than a low-end cheap VPS, and an entry-level Cloud Hosting plan will be less expensive and less powerful than most Dedicated servers.

If you do not want to learn to use the Linux command line, your choices are limited to Shared Hosting and fully-managed Cloud Hosting, so you can just shop around for the best combination of price and power.

There’s not much difference between managing a VPS vs a dedicated server vs a single self-managed Cloud server, but self-managed Cloud Hosting with multiple servers requires more work.

Self-managed Cloud Hosting with Google, AWS, or Azure will give you the ultimate in flexibility, but with the most effort and cost.

For a fully-managed VPS solution, I recommend SiteGround Cloud Hosting or Cloudways.

One thought on “VPS vs Cloud – which should you use?”

Comments are closed.