I have been doing a lot of speaking, and I’m always fielding the basic questions:
What is Cloud Computing?
What can it do for me?
Why do I care? And, Should I care?
Well, I figured this would make for a good post, so I thought I’d summarize some of the information here.
What is Cloud Computing?
Put simply, it’s running your applications in someone else’s datacenter(s). So, how does that different than hosting or, co-location services? The best way to answer this question is virtualization and the way in which your application runs.
Today, applications are generally tightly bound to the hardware which hosts them. For example, if I were to launch an ASP.NET application, I would need a server, running IIS, to host the application. While I can run other applications on this same server, I’m bound to this specific box. If I want fail-over or increased performance, I need to setup a second server, in either stand-alone or clustered configurations. If I want to patch the servers, I will need to often take my applications offline, patch, reboot, and bring my applications back online.
Then, there’s the datacenter. I need physical space to host this server, or servers. I need cabling connected to infrastructure items, such as switches, routers, firewalls, and, of course, the Internet. Then there’s climate control, backup concerns, network area storage, monitoring, etc. Even the power which you consume is a major factor in running your own center.
Cloud computing puts a bunch of servers together, and using some sort of management interface, dynamically allocates virtualized environments that run your application. In terms of Azure, this is actually abstracted away from the physical hardware, meaning your application can quickly and efficiently spin itself up on several instances or de-allocate down to a few instances, depending on need.
What can it do for me?
Since the allocation can be dynamic, and, in most cases, is consumption based, you can ramp up when you need more, and ramp down when you need less. In the end, more efficiently putting your investment only where you need it.
In the conventional server / datacenter model, you were forced to buy more hardware than you could ever use, to prevent outage or usage overload. And, when your traffic was way below peak usage, you had all that extra hardware, sitting there idle. This could be exceptionally hard on companies that have short peak periods, like school registration systems, or Summer Sign-up programs. Now, you can pay to scale during your peak times, scale back, and pay less for the duration of the year.
Why Should I Care?
Put simply, because your competition will.
There used to be a barrier as a start-up company to meet the high-volume demand presented by certain business ideas. For example, to be the next twitter or FaceBook, you may have the right idea… but you are likely going to be restricted by the amount of capital you can invest in hardware. Often, this leads to a growth limitation. Often times, a good idea must start small, make a little profit, use that profit to grow a bit more, then invest, etc. This model will take years to implement a world-wide impact.
Now, using cloud computing and a subscription based model, it’s possible to have indefinite growth with little or no money out of pocket. For example, if you charge, up front, for your product or service, you can literally allocate the new required application usage as you receive online payment from your customer. In other words, 10 people pay… you allocate enough process to service those 10 people. If 10 Million people sign up, you allocate enough process to service those 10 Million people. You can, theoretically, go from startup to the size of EBay in days or weeks. Not years or decades.
So, what I advise people is not just to look at this in a “what advantages will this bring me” perspective, but instead ask yourself “what advantage will this bring my competition”. Often, when we’ve invested in a datacenter, and we’ve established dominance in a market, we quickly forget about “those little guys” who couldn’t compete on a world stage with us. Well, that could very well change, and it’s best to understand it if you want to minimize the impact it may have on your business sector.