Rackspace vs. Amazon — the Cloud Wars
fdicostanzo writes "The folks at Mixpanel are leaving Rackspace's server cloud for Amazon and have left a little note about their reasons. There's been some talk that Rackspace's offering has not been up to snuff once you scale. Analysis suggests that Rackspace's offering still has some advantages however."
I don't think that, with the fairly classical "cloud" guys like Amazon, who offer essentially Virtual Private Server products; but with automated provisioning, the argument has ever been about much more than flexibility. The more abstracted "cloud" people(gmail, google docs, etc.) can make the management complexity argument, since they offer highly abstract services with all the gory details hidden; but Amazon basically just tosses you a Linux VM and leaves you to deal with it from there. The only attraction is that, unlike classic VPS, you don't have to talk to a sales rep, just an API.
Given that with Amazon, all their EC2 stuff is either uber-commodity linux VMs or available for local hosting via the Eucalyptus project(their storage mechanism, etc.) it is possible to adopt a hybrid "base load/burst load" strategy, similar to how the electrical utilities do it. If your operation has a more or less steady base load, you run it on cheap boxes of your own. If you have a load spike, you use the expensive; but quick to spin up, EC2 instances. Since modern virtualization overhead is low, and virtualization is extremely convenient anyway, you don't lose to much, you don't pay Amazon a flexibility fee for things you don't need to be flexible; but you can swiftly pay for additional capacity that works just like your local capacity, and then stop paying when you no longer need it.
If you need long-term, stable levels of service, you'd be insane to buy it from a burst-service company, just as very heavy cell users would be nuts to buy a contractless per-minute plan. Either do it in house or hire a hosting company to do it for you, on a stable basis.
As far as I can tell, what you're looking for is just virtual hosting, with a few specific requirements. I would think you could find all of those requirements, although I'll concede that a lot of options available today kind of suck.
"Cloud Computing" in my understanding is in fact all about the automatic scaling. I want to do a proof of concept online, and then show it to a few potential clients. I want it to basically be turned off when I'm not using it, and scale up quickly if my clients start hammering it. I only want to pay for what gets used. If I'm not using it, sell that capacity to somebody else, and keep my costs down.
If your're a full-fledged business, and you want responsiveness, and you want to guarantee a certain level of service to your clients, then cloud hosting may not be the best bet, or even the cheapest. You could still use it for special cases though. I heard a neat example: this guy needed to convert several million images into thumbnails. He wrote a little service to do it, hosted it in the cloud, let it scale way up, and churned through all the images in a few days, and it cost him a few hundred bucks on his corporate credit card. The time and expense to set up dedicated servers for this one-off task would have been ridiculous.
Like every damn thing in computer science (and really, life) cloud computing is not the solution to all of our problems, and it's also not a complete waste of time. It's a useful tool, to be used when appropriate.
Ooo! Car analogy! If you commute every day by car, you should probably buy a car. If you take the train to work and just need the car for the occasional trip to Target, then a car-sharing service might work for you.