Understanding Cloud computing efficiency
Picking a cloud service at times, unfortunately, is far more complex than picking up a brand new car. I remember how torn I was between a honda-hybrid, which came with some tax rebates and a carpool sticker and a non-hybrid one which was significantly cheaper. Understanding the short term and long term benefits is the key.
Here are the key differences which one should understand before deciding which one to go for.
* IAAS (Infrastructure as a service) providers like AWS (EC2) and Rackspace provide virtual infrastructure which you can manage and control. In most cases you are billed by a time-unit and you would have control to increase or decrease resources available for your application. PAAS (Platform as a service) on the other hand only provides APIs for your application. PAAS based infrastructure is usually billed by number of requests or by the CPU cycles spent on supporting the requests. Microsoftâ€™s Azure places itself somewhere in between these two paradigms which makes this even more interesting.
* If your applicationâ€™s resource requirements fluctuate a lot on a daily basis and you donâ€™t want to invest in building a scalable architecture and the logic to manage/monitor the process of scaling up and down, then PAAS based service might help you. But if you want higher performance, more control of your code and infrastructure (and the way it scales) then IAAS is the way to go.
* If you have consistent load throughout the year, you should think about reserving resources for longer term if possible. It could turn out to be cheaper. But at the same time more servers/resources you reserve, more expensive it gets for you. There is a point at which it might be cheaper to host the infrastructure yourself.
* If your application is has short but high CPU resource peaks, you should look at a vendor which doesnâ€™t put a performance ceiling. â€œThe BitSourceâ€ did some performance tests between Rackspace vs Amazon EC2 which explains this problem very well.
* Finally, If you already have a large computing infrastructure within your organization and want more â€œlong termâ€ computing resources, based on the studies I have seen, its cheaper to manage/setup new servers/storage within the organization than outsourcing it to AWS/Rackspace.
At the end of the day remember that vendors are there to make money as well. If you plan to make significant long term investment into cloud services, you should do some research to make sure that is really the cheapest solution.