Gordon Haff's post on The New Hosting Provider?
over at Illuminata made me realize the differences between cloud computing and web hosting aren't exactly clear. Where do all these things fit? Who needs what? He mentions simple services like Blogger being more attractive to the novices, but cloud computing isn't about solving a specific software problem, like building a blog.What is Cloud Computing?
Remember the old days when mainframes were really expensive, so companies that needed a lot of computing power would time share
Crays? Cloud computing is like that. Cloud Computing is hardware, a lot of hardware, in a data center, somewhere, that is shared by many users. Users of the cloud, like time sharers of Crays, are given as much computing power as they need -- when they need it.
This differs from typical Web Hosting, because web hosting gives you a fixed server or a portion of a single server, where cloud computing gives you the benefit of many servers all working together as one. Your particular website or application may only need one small portion of a single server, so there's no need to get a dedicated server. Those servers sit on, consuming power and space even if it isn't needed.
Where cloud computing really offers benefits is when a website or application gets hit with a lot of traffic in a very short amount of time. This is also known as "slash-dotted
" or "the digg effect
." As you can see from those links, on a regular web host, you'd be toast. This very thing happened to John M. Willis
recently, but Mosso, a cloud computing provider, saved his bacon
This is because Mosso has additional capacity, beyond a single server, to serve his blog. If the hits come in a massive wave, The Cloud automatically distributes the load to multiple servers. When the hits subside, John's blog is taken off those additional servers, freeing up computing space for other blogs and sites like Qrimp.
Scaling a site is not a trivial problem. Difficulties lie at all levels of the stack and working out the kinks becomes exponentially more difficult as you add servers to the farm. You have to build a high performance network for all the servers and then you have to make sure those servers can communicate with each other effectively. On top of that is the software that has to properly use data caching and optimized code. The industry is so diverse that there are experts at every level -- and they are expensive -- the good ones anyway.
The good news is that end users don't have to worry about it anymore. Those end users include developers as well. The less people have to worry about, the more productive they can be and the better they are able to solve particular problems. Mosso solves Qrimp's hardware problem, Qrimp can then focus on and solve the software optimization and interface problems, and our customers can focus on their business problems and how they are going to solve them with databases and web applications.
With typical web hosting, the end user, the builder of the website still has to solve the problems at every layer of the application. Of course scaling a site only becomes a problem if it is popular and at that point, like Kyle says, you can bring in the nerds
, but you also have to pay for their dedicated services all by yourself. The advantage of Cloud Computing, is that you pay for the hosting and you get the Scalability Nerds' expertise included.