Skip to main content

Choosing a 'primary' infrastructure provider

For the most part, big web infrastructure providers are fairly few in number (as the cost and difficulty of setting them up is very high). In addition, you are likely to use several features of whichever provider you choose, such as webservers / database servers / cache servers, as it is a lot easier to manage that when they are on one provider than several.

As a result, you'll likely end up with one provider who you use for several services, and then a number of providers you also use for one particular service that your main provider doesn't offer or isn't best suited for in your use case. Below are some of the web providers you might choose, and some thoughts on them, to give some insight into the process.

The Big Three

The big three in this market are considered to be Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).

image.png

AWS and Microsoft Azure are the two biggest players in the cloud services market by a big margin (~32% and ~23% respectively in 2022, compared to Google Cloud Platform with ~11%). This doesn't mean they are the best, as other smaller players do exist, but it does have some advantages.

Pros
  • A huge amount of features and power
  • Very well supported and documented
  • There isn't a lot you can't do with them
Cons
  • Some features are much better value for money than others
  • Not all powerful features are necessary for some website use cases
  • Definitely not beginner-friendly; you need a lot of knowledge to make use of these services effectively

Smaller players

The smaller players in the cloud services world are worth considering, depending on your use case. Generally it's about sacrificing power and configuration for lower prices, although in some cases, much like the bigger providers, it's not always value for money.

Examples of the smaller players in this space include DigitalOcean and IBM Cloud.

Pros
  • Can be significantly cheaper for some services than the major players
  • Can be easier to get started with, as due to the lower complexity of services offered, there is less of a learning curve involved
Cons
  • Usually involves lower amounts of configuration options and power, which in some cases is fine and in others can be a problem
  • Not always value for money here either, depending on the service/provider in question
  • Can have less comprehensive documentation and support