Over the years, I have used several dedicated and cloud hosting companies. I thought that I would share my opinions on them (as far as the features that I’ve used among them).
Although I have tried Microsoft Azure and the Google Cloud Platform, I preferred the interface of AWS and/or the price of other options, so I did not give them much of a trial. As a result, they will not be included much in this article. I also do not have a DevOps background so I will not be discussing HA or load balancing a lot.
Amazon Web Services (AWS)
I used to be a die-hard promoter of AWS (I still use them for some of their specialty services, and recommend them depending on infrastructure needs).
- Speed – I have always gotten impressive transfer speeds while using Amazon’s web services.
- Integration – All of their services have tight integration with each other.
- Offerings – They offer much more services than most. Some that I still use:
- They offer reserved/floating IPs for free.
- Security – Their Identity & Access Management service provides on place to manage security policies for all products.
- HA & Load Balancing – They have some excellent and integrated load balancing and HA options, as well as Marketplace images and vendor scripts for one-click deployment. For a poor man’s solution, they also offer round-robin DNS.
- Price – Some of their services are expensive, but as they say, you get what you pay for. Using a “pay only for what you use” pricing model can also be a deterrent when your boss asks you, “How much does it cost?”
- “Not Invented Here” mentality – While they may have reasons for offering products such as DynamoDB and ElastiCache rather than MongoDB and Redis, respectively, this can be a problem for migrations or any attempts to remain relatively vendor-agnostic, as well as looking for well-supported driver libraries.
- Interface – While some of their products are reasonably straightforward and even include wizards, many of them are confusing to those who are new to the technology and/or AWS as a whole.
- One-click Deployment – It would be nice if they had official one-click deployment solutions for popular apps, including typical configurations. For example, a one-click image for EC2 that has a base LEMP setup plus Magento and Redis.
DigitalOcean was the second cloud provider that I tried (while still an AWS customer), and for most of my needs, it was far cheaper than AWS (high availability is generally not a concern for what I do with it).
- Price – Their lowest hosting instance is $5/month (plus $1/month for daily backups), and you are charged hourly, so if you delete an instance after a week, you are only charge for that week. This is handy when you want to set up a quick test or development server to try something out. They also offer reserved/floating IPs for free. Daily backups are only 20% of the cost of the droplet (so, $1/month extra for their lowest tier).
- Speed – Although I have gotten better throughput from Linode and AWS, their transfer speed is still very good.
- One-click Apps – They have the most extensive list of one-click apps that I’ve seen from any other cloud provider.
- Offerings – They just added block storage for $0.10/GB and have the largest selection of one-click open source apps of the others (which are still on Ubuntu 14.04, but at least it’s Ubuntu).
- Support – They have THE most impressive library of documentation of any of those reviewed here, hands down.
- Interface – They tie with Vultr for having a fairly easy control panel.
- Offerings – They do not have as large a portfolio of services as Amazon AWS.
- High Availability – Unlike Vultr, they do not have DDoS support. Unlike AWS or Linode, no load balancing options.
- Miscellaneous – They don’t offer “startup scripts” when launching new images as Vultr does, but I do not use that feature.
After awhile, I ended up switching most of my apps to Vultr because I liked that their lowest ($5) tier comes with 768GB or RAM. At the time, they also offered block storage as an option, but DigitalOcean has that now too.
- Price – Their lowest hosting instance is $5/month (plus $1/month for daily backups), and you are charged hourly, so if you delete an instance after a week, you are only charge for that week. They also offer reserved/floating IPs for free. Daily backups are only 20% of the cost of the instance (so, $1/month extra for their lowest tier).
- One-click Apps – Although they offer several one-click apps, their list isn’t as extensive as DO and they are based on CentOS 6. However, they do offer one-click cPanel for an additional $15/month.
- Offerings – They were the first of those listed here, after Amazon, to offer block storage. You never have to worry about running out. They also offer Windows 2012 R2 for an extra $16/month, which is unique. Finally, they allow loading an instance from an uploaded ISO image, also unique.
- Distribution Options – They offer a lot of distribution choices, including Gentoo and Slackware.
- Security – They offer DDoS support for an extra $10/month.
- Miscellaneous – They offer “startup scripts” for launching new instances, which may be nice for automation. They also let you set your reverse DNS via the control panel. They let you partition your instance’s storage and have an indicator to show you how much data transfer you’ve used for the month.
- Price – They charge an extra $3/month for additional floating/reserved IPv4 addresses. I think that is rather expensive.
- Speed – They are probably the slowest of the four reviewed here, though acceptable.
- Offerings – They do not have as large a portfolio of services as Amazon AWS.
- High Availability – Unlike AWS or Linode, no load balancing options. I have experienced occasional network outages as well.
- User Interface – They tie with DigitalOcean for having a fairly easy control panel. You can create e-mail alerts when various resource utilization exceeds thresholds.
I am new to Linode. It was actually recommended to me by a recruiter. I had looked at it a long time ago but was turned off their pricing, however, they have become extremely competitive. I now host most of my applications with them.
- Speed – I have to admit, it feels like it has one of the fastest throughputs I’ve seen of any of the others mentioned.
- Price – They are a little more expensive that Vultr and Linode (no $5 tier, a couple of bucks more for the instances). Their lowest price instance is $10/month but has twice as much memory as their competitors.
- Resources – Compared to the others, they are VERY generous with their resources (for the price).
- High Availability – They offer load balancing from their control panel and managed services with 24×7 support (for extra fees).
- Miscellaneous – They also let you set your reverse DNS via the control panel.
- Offerings – No one-click application support, and they do not have as large a portfolio of services as Amazon AWS.
- Security – They don’t offer deploying private keys for SSH access via the control panel as the other providers do.
- Interface – Their interface is more intuitive than AWS, but not as easy as DO or Vultr. Regardless, it doesn’t take long to figure out.
- If you are looking for a high availability, enterprise-grade solution, I would consider looking at Amazon AWS (due to their tight integration and vast number of service offerings) or Microsoft Azure. When it comes to database integrity and speed (both it terms of throughput and safety), Amazon and Azure really have it going for them.
- If you are a developer looking to set up quick, easy and cheap instances, I would give Vultr or DigitalOcean a try. You might consider Vultr if you want one-click cPanel, Windows or the ability to install from ISO.
- For everyone else, I highly recommend Linode. Their prices are close to Vultr and DigitalOcean, yet their speed is impressive and give you double the memory. Let us not forget that they offer load balancing as well.