“Cloud Computing”, it almost rolls off the tongue doesn’t it? If you believe the hype, cloud computing is cheaper, safer and easier than any other form of application hosting, it exists in the magical land of ‘cloud‘ where nothing ever goes wrong, in fact, to say it’s reliable is almost an understatement.
However the truth, can often be far different from that which many of the ‘cloud computing‘ or ‘cloud hosting‘ providers would have us believe. The cloud is a complex, multifaceted beast, with varying levels of complexity and specialty, not to mention radically varying prices. All told we would do well to consider just what makes up this ‘cloud‘, when it really is a great solution, and just where we may just be falling for the hype.
Cloud Computing 101
The term Cloud Computing first came about in 1960 and was used to express the notion that computing resources could someday be grouped together as a public utility. Today however, the term is used to describe a somewhat limited range of services, all of which adhere to some form of commonalities.
When a company refers to ‘the cloud‘ or ‘a cloud‘, they are generally referring to one of a number of technologies that are widely being used to replace the traditional server-infrastructure model.
The cloud normally consists of a large number of servers, all linked to each other in such a way that they may be used by a number of parties, at the same time and are capable of reallocating resources to respond to demand at any given time.
A classic application of this technology is a stock market monitoring service. Suppose we ran a service that monitors the New York Stock Exchange, the service would only ever be active during the hours that the exchange was trading, and where we to plot a graph of the server usage of such a service, it would not appear dissimilar to the parapets of an ancient castle. The application here is obvious, rather than paying for hundreds of servers to be running around the clock, the service could instead scale its infrastructure to cope with the load during peak periods, taking what Amazon.com refers to as ‘server instances‘ offline whilst they’re not needed.
The Key Players
The theory behind cloud computing is at best subjective. There is no ‘official‘ standardized definition, which allows for a fair degree of ambiguity. There are however a number of large, incumbent suppliers in this relatively new market.
Perhaps the best known supplier of cloud computing solutions is Amazon, better known for its online book (etc…) store. The Amazon Web Services (AWS), are, arguably, some of the best, and cheapest, in the industry. If it’s .net hosting that you’re in need of however, you’d be well advised to look into Microsoft’s offering and even then we’re barely scratching the surface. Other key players include IBM, RackSpace and even smaller hosts such as Media Temple (mt), offer similar, if not exactly comparable, solutions.
What’s so great about the cloud
The main advantage to the cloud is its flexibility. The ability to expand an applications capacity to meet demand, without the need to purchase new hardware, it’s every server technician’s dream come true. There are however, other advantages. For applications that require large amounts of storage, the cloud model allows large quantities of data to be pushed to servers that are built to handle those large volumes of data, or if an application must process images or an infinite stream of data, servers that are ideally suited to that task can be assigned.
The cloud allows for companies to not only scale the number, but also the type, of server that they use at any time. It’s here that the majority of savings are made when switching to the cloud. There are however, times the cloud is not the best option.
When the cloud isn’t so great
37Signals is a well known, and respected, web software company. They make some great software and have over six million of users across their applications, requiring some serious server resources to power it all. 37Signals don’t use a cloud service provider. When looking at the usage patterns of their users they found that they where growing at a predictable rate, with somewhat even usage levels (due to their multi-national customer base), both areas in which savings are often made by switching to the cloud.
Once they’d done the sums, priced up the cost of running their own servers, and factored in future growth, they found that it was cheaper to go the more traditional route, and purchase the hardware they needed. This is the case across all the 37Signals applications and web properties, with one exception, they decided to use the Amazon S3 service with their blog, hosting the static files such as images and stylesheets.
Getting started with the cloud
Now we’ve considered what goes into the cloud and where it is and isn’t a good idea, let’s consider how we can best make a start using a cloud hosting service.
The first task is to choose a cloud hosting provider, the de-facto standard seems to be the Amazon offering, AWS, which has been making waves across the web, from academic institutions to industry leading blogs and applications.
Once we’ve settled on a service provider we need to look at just what we do and don’t want to be hosted there. Whilst the cloud is adaptable to almost any kind of service it does provide an additional level of complexity in some circumstances. Your personal blog, unless you get over half a million visitors a month, probably won’t benefit much from being moved to the cloud. A new service you’re developing to handle payments for a fortune 500 or an app for checking on car parking spaces in your local city however, are probably quite well suited to the ability of the cloud to quickly expand and shrink in line with demand.
If you’re thinking of making the jump to the cloud, you’d do well to look into AWS as well as a few of its competitors. Once you’ve decided you’re going to make the switch I’d strongly recommend gradually moving parts of a service over piece by piece, in order to minimize the effects of any problems that occur.
Your Turn To Talk
Have you ever used cloud computing or cloud hosting services? How was your experience? Please take a minute to share your thoughts with us in the comment section below!