The three prominent models of Cloud services are SaaS (Software-as-a-Service), PaaS (Platform-as-a-Service), and IaaS (Infrastructure-as-a-Service). An organisation can use any one or all three as per the requirements. Two other models of Cloud services are Serverless computing and FaaS (Function-as-a-Service).
1. SaaS (Software-as-a-Service):
The saas in cloud computing is alternatively known as Cloud applications or Cloud-based software. It is application software being hosted in the Cloud. It can be accessed and used in any of the three ways. These ways are a web browser, an API integrating your mobile operating system or desktop, and a dedicated desktop client.
In the majority of the cases, SaaS users pay a monthly or yearly subscription fee. In some cases of saas in cloud computing, the ‘pay-as-you-go’ pricing option as per your actual usage is also available.
Apart from quick deployment, cost savings, and scalability, SaaS also provides the following benefits:
- Protection against data loss:
Since your application data is present in the cloud, you will not lose data of your application when the device breaks or crashes.
As soon as the providers add new features, they get updated for you. No need to organise an on-premises upgrade.
SaaS is the key delivery model for most commercial software prevalent today. But there are myriad—SaaS solutions available, ranging from focused industry applications to AI software to business software databases.
2. PaaS (Platform-as-a-Service)
The platform as a service in cloud computing (PaaS) facilitates software developers with an on-demand platform. This platform has a comprehensive software stack, hardware, infrastructure, and development tools. These tools enable applications' operation, development, and management without the expense, complexity, and rigidity of upholding that platform on-premises.
The PaaS in cloud computing allows the cloud provider to host everything, including networks, servers, operating system software, storage, databases, middleware, etc. They can host all of these in their data centre. Developers must choose from a menu to boot up environments and servers they require to operate, develop, test, set up, upkeep, update, and scale their applications.
Recently, PaaS in cloud computing is usually developed over containers representing a virtualised compute model. Containers will virtualise the operating system so that developers can bundle their applications with only the operating system services required to operate on any platform. During application packaging, there is no need for modification and middleware.
One of the famous paas examples in cloud computing is Red Hat OpenShift. It is developed based on Docker containers and Kubernetes.
3. IaaS (Infrastructure-as-a-Service):
The infrastructure as a service in cloud computing facilitates on-demand access to the core computing resources. These resources can be networking, physical and virtual servers, and storage on the Internet on a ‘pay-as-you-go’ basis.
IaaS in cloud computing allows end-users to scale and contract resources as required. So, it decreases the need for upfront capital expenses or needless on-premises or owned infrastructure. Also, it eliminates the need for overbuying resources to house periodic spikes in usage.
Contrasting PaaS and SaaS, IaaS lets the users employ the least possible control of computing resources. In the early 2010s, when IaaS was introduced, it was the famous cloud computing model. For several years after its launch, it remained the Cloud model for several types of workloads. But nowadays, the usage of PaaS and SaaS is progressing faster.
4. Serverless computing:
Also known as simply serverless, the Serverless cloud computing model unloads all the tasks related to backend infrastructure management. These tasks are patching, provisioning, scheduling, and scaling. Cloud providers will look after these tasks. Hence, developers can concentrate on the code and implement better business logic relevant to their applications.
This model operates application code according to a per-request basis only. It automatically scales the supporting infrastructure up according to the number of requests. Moreover, customers only have to pay for the resources used when the application operates. No charges for idle capacity.
5. FaaS (Function-as-a-Service):
FaaS is a subset of serverless computing. It enables developers to implement fragments of application code (known as functions) according to specific events. Tasks except the code include virtual machine operating system, physical hardware, and web server software management. The cloud provider automatically handles these tasks in real-time when the code runs. When the code execution finishes, these tasks will stop operating. The start and end of billing happen as per the execution of the code.