Tuesday, November 18, 2008

Is Cloud Computing Just Hosting?

I recently had a chance to chat with some I.T. people who had been noticing all this cloud computing buzz but didn't see what all the excitement was. Cloud computing seemed like a new word for an old thing: hosting. They knew all about hosting and had been using it for years.

Is cloud computing just hosting, re-branded? The answer is no. And yes. Really, it's hosting++. Let's dig in and see how cloud computing is like and unlike hosting.

Automatic Provisioning and Deployment. Like standard hosting, cloud computing gives you a place to run your applications and store your data in a managed data center. Unlike standard hosting, you aren't required to remotely connect to a specific set of machines and configure them yourself. Instead, you provide the data center with your code and metadata about what its needs are. The data center takes care of virtualization, provisioning, deployment, and load balancing for you--completely automatically. You never get involved in installing software or configuring servers. In Windows Azure, this is all controlled through a well-designed portal at Azure.com.

On-Demand Scaling. Like standard hosting, your cloud computing code and data is maintained on servers and storage devices. Unlike standard hosting, the scale-out of your code and data happens automatically, on-demand. If traffic levels increase, so does the instancing. If traffic levels drop, the number of active instances goes down. You can grow anytime, without having to requisition new hardware. Azure never wastes your money or the data center's hardware.

No Long Term Commitments. Like standard hosting, cloud computing costs something. In the case of Azure at least, you aren't required to make a long term commitment or sign a contract for a specified period of time such as one or more years. You pay for what you use, and you can stop anytime without penalty. It's computing done right.

Pay as You Go. Standard hosting often charges you for keeping machines and storage available regardless of the extent to which they are actually used. In Windows Azure cloud computing, you only pay for what you use. If you use more, you pay more. If you use less, you pay less. Just like how your electric or water bill works.

Additional Services. Standard hosting doesn't generally provide any new software capabilities, it's just an alternative place to run code and store data. Windows Azure does provide new software capabilities, and they are both numerous and compelling. Live Services allows you to tap into the Windows Live identity and contacts services. Geneva technology allows you to support enterprise customers and let them use their native security system; and you can even federate a mix of enterprises and security mechanisms simultaneously. SQL Services provides database services with new scalability options not available in the enterprise. .NET Services gives you a service bus, which allows for business-to-business publish/subscribe communication that is firewall friendly. .NET Services also lets you run workflow in the cloud. Windows Azure really is an operating system for the cloud, and Azure Services really provide applications with a fresh set of capabilities that are also easy to get at and combine.

Available, Scalable, Reliable. In the enterprise, some of the hardest things to do well are high availability, dynamic scalability, and high reliability. These things come "for free" with the cloud any time you use it.

Hosting is to cloud computing like radio is to color TV. There's nothing wrong with hosting, but the next generation is upon us.