Save Time Managing WordPress
Last week I moved b3n.org from DigitalOcean to Cloudways Managed WordPress Hosting. Why? Well, there is nothing wrong with DigitalOcean, they’ve been fantastic.
But my problem is I hardly had time to maintain the technology stack. A few weeks ago I was in the process of adding a couple of WordPress sites. This isn’t difficult, but it’s tedious. You have to create user accounts, modify NGINX site files, setup SSL Cert Automation, configure Varnish and Redis for caching, install WordPress itself and set all that up for security, auto-updates, caching, etc. Then a year from now I’m going to have to migrate everything to a new host when Ubuntu 16.04 goes EOL (End of Life) for security updates. As I was working on this I thought to myself… What am I doing!?
Before: On DigitalOcean I spent a lot of research and testing and setup plus several hours a month maintaining the OS, technology stack, security updates, and performance tuning necessary to run WordPress.
After: Now I host WordPress on Cloudways and they take care of it for me. When I want a new WordPress instance or to make a change I push a button on a web interface. Done.
What did that time savings cost me? It cost me dearly. My monthly hosting went from $5 to $10.
Before finding Cloudways I had a bit of a journey. I started by looking into hosting options… and decided I wanted managed hosting. This is mostly because I feel like I’ve done a much better job at tuning WordPress than shared hosting providers I’ve used in the past.
Managed Hosting vs. Shared Hosting
Managed hosting typically differs from shared hosting in the service level they offer. I say typically because many managed hosting providers fall short, and many shared hosting providers excel in these areas. But in general Managed Hosting providers are better at:
- Automated backups
- Multiple environments (Dev/Stage/Prod) and migration between them
- Performance tuning
- Caching and CDN
- Security updates
- Guaranteed or dedicated resources (cpu, memory, I/O, bandwidth)
- Better control of when core components get upgraded (PHP, MySQL, MariaDB, etc.). This is useful because if you want to take advantage of the latest version of PHP like 7.3 you can, but if you have a plugin that isn’t compatible you can stay on an older version.
10web has an article that goes into more detail on managed hosting.
Managed Hosting Options
I had my shortlist. SiteGround, Bluehost, WPEngine, etc. Note that I am not looking at the cheaper shared hosting, but at their managed hosting plans.
All looked like they’d be great but what irked me is they want you to pre-pay for several years in advance to get the advertised price. I am used to hourly billing with DigitalOcean. The thing with technology is things change fast so I want flexibility. I don’t ever want to be locked into a situation where I’ve prepaid 2 years of hosting.
The other concern is the affordable plans had monthly visitor limits, bandwidth limits, or number of WordPress install limits. Most were under what b3n.org needs which would push me into the $100+ plans. Maybe my DigitalOcean droplet isn’t so bad after all!
So back to Google searching… I came across Cloudways. What’s the best way I can describe Cloudways? The DigitalOcean of WordPress.
What Separates Cloudways
What makes Cloudways unique is when you deploy WordPress, you’re not just getting a managed WordPress Application. You’re getting your own Cloud Server and you can install as many WordPress instances under it at no additional cost. So the hierarchy is:
- WordPress site 1
- WordPress site 2
If you run out of capacity you can scale horizontally (deploy more servers) or vertically (more cores, memory, and ssd space).
Cloudways doesn’t have their own infrastructure. Rather they partner with DigitalOcean, AWS, Google Cloud, Linode, and Vultr so you pick the underlying cloud vendor. So when you deploy a server on Cloudways you’re actually getting a managed cloud server.
Features I like from Cloudways
- You can choose your desired cloud provider based on your needs.
- Price is affordable ($10/month for a small DO droplet)
- Per hour billing (no pre-paying years in advance).
- Unlimited sites and WP instances, you can scale up as needed.
- Choose any location you want
- Staging Environments!
- WordPress migration (mine migrated over flawlessly) from your old server
- 24/7 Support … now when my server has trouble I don’t have to call myself.
- Linux, Apache, NGINX, SSL Cert automation, Varnish, redis, security updates and all of that stuff I used to maintain myself is now taken care of for me! |:-)
- Monitoring and Auto-healing can correct problems proactively.
- There are a lot of checks for best practices and server health. I temporarily disabled the Breeze cache plugin and got an email the next day telling me it was still disabled. Similarly there are checks for load and performance.
- You can choose which version of PHP and MariaDB to run on.
- And now when Ubuntu 16.04 LTS goes EOL…. I don’t care!
- WordPress Instances come pre-optimized (have Breeze caching plugin installed, Memcached, etc.).
- It’s not limited to WordPress so Drupal and other PHP applications are supported as well.
Where Cloudways Could do Better
- I’m a bit unclear what what happens when the server I deployed goes EOL for security updates. I can’t imagine they would upgrade it autonomously since that would be risky. I’m guessing it would fail a health check and I’d get a notification to upgrade? It’s something I’ll have to keep an eye on, but it could be made clearer. If the solution for this is to deploy a new server and move your WordPress Instance over to a new server that can be done with a few clicks from the web interface.
- The Cloudways interface is not snappy. It can take a few seconds to bring up monitoring metrics.
- Where are floating IPs?! With DigitalOcean I can get a floating IP that I can assign to one droplet and then reassign it to another droplet. With Cloudways it looks like moving to another server would require DNS changes.
In the the chart below I have:
- IaaS (Infrastructure as a Service)
- PaaS (Platform as a Service)
- SaaS (Software as a Service)
Cloudways would fall in PaaS. They manage everything that WordPress runs on (PHP, MariaDB, Varnish, Apache, NGINX, etc.). Although they step in the SaaS world a bit since they will automatically deploy optimized WordPress instances for you with things like caching pre-configured, but for the most part you’re still managing WordPress yourself.
All in all Cloudways Managed Cloud Hosting seems to be a decent offering. One side benefit is they’re just better at performance tuning than I am. On DigitalOcean where I was maintaining the platform myself b3n.org was able to handle a sustained load test of 150 clients per second, on Cloudways it handles over 1000 clients per second.