Cloud computing is a significant advancement in the delivery of information technology and services. By providing on-demand access to a shared pool of computing resources in a self-service, dynamically scaled and metered manner, Cloud computing offers compelling advantages in cost, speed, and efficiency. Traditionally deployments require applications to be bound to a particular infrastructure. This results in low utilization, diminished efficiency, and inflexibility. Cloud brings in capabilities to allow applications to be dynamically deployed onto the appropriate infrastructure at runtime. This elastic aspect of Cloud computing allows applications to scale and grow on demand without needing traditional patches or upgrades.