Cloud computing allows users to access computing resources like servers, storage, databases, networking, software, analytics and intelligence over the internet. It utilizes centralized data centers that can be accessed via the internet from various devices. There are different cloud service models like Infrastructure as a Service, Platform as a Service and Software as a Service. The architecture consists of a front end interacting with clients and a back end comprising servers, storage and other computing resources in the cloud. Virtualization allows multiple virtual machines to run on a single physical machine in the cloud. Major cloud platforms include Windows Azure, Google App Engine and Amazon Web Services.