Economy
Moving to cloud is happening today and it will be norm in coming days. Applications are either moving to public cloud, to privately hosted one or a hybrid one. All virtualized environment
provides elasticity in term of infrastructure provisioning resulting in saving in capex and opex in some way. But it's up to the application to exploit
the benefits extended to it by the cloud infrastructure. If application inherently is not capable of growing and shrinking elastically depending upon the load
then despite the amount of infrastructure that it can get from the virtualized resource pool, it will budge to scale beyond a threshold point.
Here the application elasticity is required in order to achieve continuous and uninterrupted business in the most cost effective manner and the application
elasticity remains mostly in realm of the software developer and not with the cloud provider
Architecture
The Application architecture is the critical element in order to realize the optimum economic and technical benfits of cloud. The
various interesting quotes in this regard are as following;
Traditionally, applications have been built for fixed, rigid and per-provisioned infrastructure. It is critical to build a scalable architecture order
to take advantages of a scalable infrastructure - AWS Amazon
Applications architectures are not designed to take advantage of cloud's elastic infrastructure resources to maximize ROI, high availability,
performance and scale - Forrester, Apr 2011
Architectural issues are a big reason why relatively few business applications have made the jump to cloud - Forrester, Apr 2011
Performance
Performance has been the key to the success for many applications. However, few years back when applications used to run in in-premise non
virtualized infrastructure, it rarely mattered if the the performance of the application was 10 percent higher or lower, at least not always visible from the cost angle.
With the virtualized environment in place, one can map from performance to cost saving, especially if the application runs on commodity hardware. 10 percent
higher performance could result in around 10 percent saving in cost. Hence more than any time before, performance of the key components and the infrastructure
becomes one of the key points for the business and it's applications
Optimization
The use of commodity hardware with SSD is the key going forward for optimizing the cost benefits. To exploit the fact that the cost of RAM, SSD and Hard Disk
are placed in decreasing order, it requires more than to just treat SSD as replacement of Hard Disk. A careful design can configure the use of these three in
order to optimize the incurred cost for a given elastic requirements of an application. Treating SSD as RAM+ would help us achieve this, and allowing an application to seamlessly
use more or less of any of these entity through a knob would be greatly desired. Thus instead of always looking for a extra machine or RAM, we may look for
extra SSD