I have to admit that I love to tinker with things. When I started playing with Linux first about 10 years ago, I realized that here was a "toy" that I'd be able to enjoy for a long, long time. I've often worked on server configuration and always had a lot of fun making servers work for big sites.
That said, I took Acquia's Dev Cloud for a spin and really like it. No hassles, it really has to be the simplest high-traffic ready system I've ever used.
If you don't know Dev Cloud, its a Drupal specific web hosting system. You get three separate "server environments" for each site - development, testing and live production. There is a web-based deployment tool to manage these environments. There are also some nice extras, like support, Apache Solr search and a handful of web services that you can use with your sites.
In my next post I'll go over how you get your site running on Dev Cloud and some of the best practices that we've found using it.
Next article - Dev Cloud - Tips and Tricks from the Trenches, part 1
First impressions
I wanted to first test out Dev Cloud before trying it with any of our clients. We were working on a redesign of our own site, so I decided to use our TechnoErgonomics site as the guinea pig.
When I logged in, I wasn't really sure what to do first. After poking around for a while, I found that there is pretty detailed documentation. I walked through the documentation as I set the site up and didn't run into any problems. In my next post I'll try to give you a basic overview of this, to possibly save you some time if you decide to try it out.
Setting up a proper web server to handle heavy traffic is not a trivial job, it can easily take a couple of days; in comparison, I got Dev Cloud set up and running my site in about an hour.
A few of the things I liked
- You have to use version control
Sites are deployed to Dev Cloud using version control such as git and a Workflow back-end interface. I found this helps to make sure we use proper development branching. I'll definitely discuss this in a future post. You really won't want to just log onto the server and make that quick change to CSS like you might otherwise. Its good to see proper software development tools and workflows being made simple and accessible.
- Optimizing and hosting improvements are always being made
I appreciate that I don't have to tell the hosting company what changes to make or what configurations I want used. Sure, I know enough to manage it, but it still takes time. As an example of the ongoing improvement to Dev Cloud, as I recall about a year back they altered Varnish to continue caching images for logged-in users (Varnish typically doesn't cache when a session ID is present and caching images for logged-in users really speeds things up). This change took place without any interruption or need to reboot. Pretty cool stuff.
- Extra services as freebies
I still can't get over the fact that to separately get the extra services that come with the Dev Cloud subscription would actually cost more than you pay for the Dev Cloud itself. Things like Mobify, to easily make a mobile version of your site, New Relic to monitor web performance and Visual Website Optimizer for click heatmaps and A/B testing... to subscribe to any one of these services would cost more than what the actual Dev Cloud server costs per site. These services can be used for all the sites that you are hosting (with the exception of Mobify, its just for a single site per server).
Is Dev Cloud for me?
As I said earlier, I love tinkering with things. In the past it made sense for our clients to have us to handle dedicated hosting. I didn't find any hosting services that would add more value then us hosting on dedicated hardware or on small hosting accounts. My opinion has changed, though.
If you find that a shared hosting provider and FTP access work just fine for you, then I expect you won't be interested in Dev Cloud.
If you are have a site that gets heavy traffic and needs dedicated hosting, then Dev Cloud is interesting for you. With a team of developers, having to use version control (which is provided by Dev Cloud) is a definite plus. It encourages you to use good branching methodologies and proper deploy workflow.
I'm testing the "developer" level right now. The "developer" level lets you host up to 3 different sites (each with development, testing and production servers), "pro" lets you host up to 10. If you are developing and hosting for a large number of clients, the pro level could be an interesting hosting solution. The cost per site right now would be around 40USD per site. Any one of the included extra services costs more than this. I should be able to find some time soon to check out all of the extra services and then I'll let you know what I think of them.
What is the difference between Managed Hosting and Dev Cloud anyway?
It took me a while to understand the difference between Dev Cloud and Managed Hosting. It finally clicked for me when Barry Jaspan was answering some questions at DrupalCon London. From a basic technical standpoint, the two products are pretty much the same thing. The same technology stack, pretty much the same configurations. Dev Cloud isn't watered-down or crippled.
The difference is in the service around the hosting. Dev Cloud is one server. If you want to make it a bigger EC2 instance, you resize it and restart. You can alter a couple different server settings. Managed Hosting customers get everything taken care of for them, multiple servers for load balancing, high availability, fast resizing without downtime. Acquia does this for you with Managed Hosting, so you never have think at all about your hosting. I think that Al Jazeera is a good example of how this service works, I can't even imagine what their traffic peaks must be like when big news breaks...
In the end...
I'm happy with Dev Cloud so far. I'll keep our TechnoErgonomics site on it and we have a few other sites in mind that we plan to migrate over to the platform. Dev Cloud does have its own backups, but we still plan to look into a way to make our own remote backups, too (yeah, call us paranoid).
In my next post I'll go over how you get your site running on Dev Cloud and some of the best practices that we've found using it.
Next article - Dev Cloud - Tips and Tricks from the Trenches, part 1