Cloud computing is a type of distributed computing, which is a software system in which components are located on networked computers that communicate and coordinate their actions by passing messages. The components interact with each other in order to achieve a common goal. In the software as a service model, the common goal is the provision of services to a client via a network. Such services often include application software and databases.
A cloud computing system can make many different services available to many different clients at one time. Services can be simple or complex, and services are often interdependent on other components. For example, an application software service may utilize a database service. A client can access the cloud system via a network in order to request and utilize a service provided by the cloud system. When a client requests a service, an instance of the service is allocated to the client.