We all must have heard about cloud computing. Industry pundits will attest to the fact cloud computing applications are on a steady rise. Visionary organizations already use cloud computing, and those remaining are contemplating jumping ship. By definition, cloud computing is a type of computing which is dependent on shared resources rather than handling of applications for individual devices or servers. The deployment of cloud computing services is possible by the use of Internet-enabled devices to access application software.
Conventionally, cloud computing serves a range of functions which could include the provision of virtual servers, storage, and web hosting and more. Cloud computing if well deployed can offer numerous benefits regarding resource sharing which includes enjoying economies of scale and consistency of data processing. This article looks at the five models of cloud computing. With cloud computing, enterprises can store and efficiently process data using third-party data centers.
With cloud computing, businesses focus on their core mandate rather than being distracted by matters of infrastructure acquisition. This is because the infrastructure is provided by the cloud provider and as a user, you enjoy the shared resources. Further, organizations can have their applications up and running, and IT resources are easily optimized to meet the organizational demand and it works based on a “pay as you go” model.
Cloud computing models
Cloud computing offers their services through models. The models provide abstractions, but it should be noted that the individual models are related. The models include:
1. Infrastructure as a service (IaaS)
The Internet Engineering Task Force (IETF), believe this is the most basic cloud service offering computing infrastructure and other necessary resources to subscribers. Infrastructure as a service (IaaS) provides an abstraction to the users regarding data partitioning, security, and scaling, physical computing resources, and more. Virtual machines are run using a hypervisor which includes Oracle Virtual Box, Xen, and Oracle VM among others. It should be noted that the cloud system can support a high number of machines relative to their demand. Some of the additional benefits offered by this model include a virtual machine disk image library, firewalls, IP addresses, load balancers, software bundles among others.
To deploy the application, users are expected to install the operating system images on the infrastructure provided by the cloud vendor. In Infrastructure as a service (IaaS), the operating system is maintained and patched by the users. The billing in this model is on a utility basis; this is based on the resources consumed and allocated.
2. Platform as a service (PaaS)
Developers using Platform as a service (PaaS) are offered a development environment by these cloud vendors. In such instances, a provider comes up with standards for development and a toolkit together with payment options and channels of distribution. The vendors typically deliver to users a web server, programming language execution environment, database, and operating system. Developers are not required to purchase hardware or underlying software for them to develop and run their applications; this is all done in the cloud. There is cloud application software including Google App Engine and Microsoft Azure which are instrumental in automatically scaling resources up or down so as to match demand.
It should be noted that Platform as a service (PaaS) have limited or no role in the infrastructure which includes operating systems, network, servers, or storage, however, they can manipulate configurations setting of the applications to suit their needs and they also have power over the deployed applications.
3. Software as a service (SaaS)
In this model, users can gain access to databases and application software. The providers of the cloud service on their part manage the platform and infrastructure. Software as a service (SaaS) model is also sometimes referred to as “on-demand software”. Its pricing is based on subscription fee or “pay-per-use basis”.
In this model, application software is installed on the cloud from where the users can access it. Users have no control over the infrastructure or platform. With this in place, users do not need to install and run the application on their individual machines. As a consequence, this simplifies support and maintenance. One major difference between this model and those others regards scalability. Software as a service (SaaS) achieves this by cloning tasks onto virtual machines while adjusting to the demand for resources. Its pricing is a flat fee for a monthly or yearly basis. It is believed that this model reduces IT operational costs by letting the cloud provider shoulder the hardware and software maintenance costs.
4. Mobile backend as a service (MBaaS)
In this model which is also referred to as “backend as a service” (BaaS), the web and mobile application developers link their applications to cloud storage where they can access application programming interfaces (APIs). The services provided by this model include integration with social networking services, user management, push notifications and more. This is one of the latest cloud computing models that was launched 2011. However, the market trend indicates that they are gaining traction in the industry.
5. Serverless Computing
In this model, cloud providers are in charge of starting and stopping of virtual machines in response to server requests. The billing is based on the resources necessary to satisfy a request but not a virtual machine per hour. The name may suggest that the system is running without a server. However, Serverless means that a client wishing to use the model does not need to acquire a server on his own. This is already handled by the cloud provider.
In this article, we have clearly introduced cloud computing briefly and what it entails or is required to run it. Further, we have looked at the five types of cloud computing models that are commonly deployed and how they work. Organizations are encouraged to go cloud because it has been proven to be sustainable and cost effective to deploy. Cloud computing offers more benefits than can be contemplated. The common services offered by a cloud computing platform include storage, virtual servers, web hosting and more.