I’ve tried to avoid commentary blogging but in this case can’t help but offer a few opinions and predictions on the 3 biggest scalable hosting options today for Windows servers.
Over the last year I’ve spent a lot of time thinking about scalable hosting and working with both Mosso Cloud Sites and Amazon EC2. I’ve recently also been able to get down to business with Windows Azure hosting and have developed some opinions about how the three stack up against each other. This is by no means meant to be an exhaustive comparison of the three but merely my impressions from a 30,000 foot view on the choices for scalable Windows hosting today.
Control: Amazon EC2 offers the most control. Aside from the internal guts of EC2 and the ability to deploy multiple instances, Amazon EC2 is for all practical purposes a dedicated server. You control every aspect of it and are responsible for it as you would be for any other dedicated server. The up side to this is that if you need to install 3rd party software on your hosting environment, impersonate users, or do any number of other rare and unusual things that you can’t do on anything but your own box, you have the all the control you could want with EC2. The downside of course is that you have a lot of rope to hang yourself with and Amazon isn’t going to come to your rescue when you do so.
Ease: Mosso and Azure definitely share the prize here. Who wants to worry about installing security patches, deploying new server instances, user permissions…etc. As a developer before an IT administrator, I want to spend my time developing, not configuring and mainting servers. Let the Mosso staff (same company as Rackspace) or the folks at MS (the company that wrote Windows Server) do this work for you. Upload and scale w/o worrying about much more than your code.
Price: Both Mosso and Amazon EC2 are around $100/mo. Windows Azure pricing has yet to be announced. The big question in my mind is whether Azure will be like Amazon S3 where if you have super low usage you get charged practially nothing? With S3, I once saw a bill for litterally 1 cent! Or, is the pricing going to be like Amazon EC2, where your cost to host a site that is practially never hit still costs a minimum of almost $100/month?
Conclusion: Why use EC2 unless you need the extra control? – Which by the way, I did need the control and settled on EC2 for my latest project. But as time goes on and we rely less and less on legacy code, server component vendors start using best practices to write their components, and the standardization of web services, more control will be necessary less often. Amazon may eventually offer something that competes with Mosso and Azure in terms of ease of use, but for now the two stand alone in this niche rivaled only by shared hosting (which of course lacks the scalability).
Azure has potential to dominate the market but this will all depend on pricing. Azure can go down the road of Mosso and EC2 and compete purely on features, or it can be priced in a way where you pay for only the horse power that you use and open the cloud computing flood gates and admit those with tight budgets. This won’t matter to many medium and large companies who need at least one dedicated server but it matter tremendously to everyone else who needs less than a server to host their applications and sites. If MS wants this audience (presumably the majority of those that need hosting), it must make it’s price scale like it’s hardware.
Some examples of who would be left out if MS takes the EC2/Mosso pricing model: imagine an entrepreneurial developer with a great SaaS idea. Either they keep their costs low until it proves itself by hostting at a place like GoDaddy or they shell out $1200 / year to make sure it can scale. Or, how about the local restaurant who isn’t shooting for an international web presense. GoDaddy can get you hooked up with ASP.NET and SQL for $4/month last time I looked. Why would you ever pay 25 times that for something like Mosso or EC2? And last, imagine the programmer who writes a simple little web service to perform some small function for an in-house app they write. Either they piggy back on some other server (probably being used for mission critical functions) or they create a special server for themselves. If you’re a developer, ask yourself: how many times have wondered or asked, “which server should I put this on?”
Here’s a chance for MS and Azure to really change the world of software and cloud computing. By choosing a pricing model that scales at the low end, they could essentially eliminate cost as a constraint to launching an application in the the cloud. Never will a developer abandon an idea because it costs too much to make sure it could scale. If they go with the Mosso/EC2 pricing model where you get charged a relatively large amount for having a nearly idle server, then the majority of programmers will be left to suffer traditional, unscalable, shared hosting a little longer while those of us with the bigger budgets will have 3 great choices for scalable Windows hosting.