Monday, July 28, 2008

Cloud computing: Evolution of the species?

So I'm registering for the Gartner Web Innovation Summit, and I'm seeing two major, broad themes: Web 2.0 (which I understand) and Cloud Computing (which I don't).

From the look of things, everybody and their dog is "computing in the cloud"...except me. How did I get so far behind?

As I've studied up on the technology, I've been reminded of this classic (but obviously modified) drawing:




(I'm probably infringing someone's copyright, but I can't find out who the owner is...let me know if you find out.)

Here's how I see the (possible) evolution of application hosting (assuming that you manage your own servers):
  1. Self-hosting
    Here, we get some Internet connectivity within our office space, grab some IP addresses, build some web servers, and announce ourselves to the world. When it's time to deploy or update the application, we sit on a stool in front of a keyboard and monitor and use an A/B switch to choose which server we want to work on.
  2. Co-location (Phase 1)
    In this stage, we move our servers to a hosted environment, where the data center provides power and Internet connectivity. Aside from that, it all works the same: Every time a server needs to be refreshed, or the application needs to be deployed, someone drives to the data center, sits on a stool in front of a keyboard and monitor, etc.
  3. Co-location (RDP)
    Now we're getting high tech: Instead of running to the data center all the time, we use RDP (if we're running Windows, or some equivalent technology if we're running something else) to hit our servers remotely. But we still own all of the equipment, and we have to get it in there somehow (perhaps using a 3rd-party IT resource).
  4. Cloud computing
    Here's where it gets kind of...um...cloudy for me. Those nuts at Google, Amazon, and Microsoft (among others) are using virtualization on steroids to offer...well, heck, I don't know what! But instead of selling servers or hosting space, they're offering these funky units of computing time like "EC2 Compute Units". Wha...?

Is this where application hosting is going? The idea is pretty amazing: These huge players build megaservers that can host dozens or hundreds of virtual servers, and then they provision them out like web sites or SQL Server instances.

If your business suddenly doubles, you don't hop on a plane to install a bunch of blades in your data center. Instead, you fill out a form online asking for a bunch of EC2 Compute Units, then deploy your app. If traffic falls, you just decommission a few servers, and your invoice reflects the drop in usage.

Anyway, it's cool stuff. To be honest, I don't see AdvancedMD moving into this space any time soon, but it may be a fun spectator sport.

No comments: