Types of Cloud Services
Most cloud computing services fall into four broad categories: infrastructure as a service (IaaS), platform as a service (PaaS), serverless and software as a service (SaaS). These are sometimes called the cloud computing stack because they build on top of one another. Knowing what they are and how they’re different makes accomplishing your business goals easier.
Infrastructure as a Service (IaaS)
The most basic category of cloud computing services. With IaaS, you rent IT infrastructure – servers and virtual machines (VMs), storage, networks, operating systems – from a cloud provider on a pay-as-you-go basis.
Infrastructure as a service (IaaS) is an instant computing infrastructure, provisioned and managed over the internet. It’s one of the four types of cloud services, along with software as a service (SaaS), platform as a service (PaaS), and serverless.
IaaS quickly scales up and down with demand, letting you pay only for what you use. It helps you avoid the expense and complexity of buying and managing your own physical servers and other datacenter infrastructure. Each resource is offered as a separate service component, and you only need to rent a particular one for as long as you need it. A cloud computing service provider, such as AWS, Azure, Google Cloud, manages the infrastructure, while you purchase, install, configure, and manage your own software—operating systems, middleware, and applications.
Common IaaS business scenarios
Typical things businesses do with IaaS include:
Test and development. Teams can quickly set up and dismantle test and development environments, bringing new applications to market faster. IaaS makes scaling dev-test environments up and down quick and economical.
Website hosting. Running websites using IaaS can be less expensive than traditional web hosting.
Storage, backup and recovery. Organisations avoid the capital outlay for storage and complexity of storage management, which typically requires skilled staff to manage data and meet legal and compliance requirements. IaaS is useful for handling unpredictable demand and steadily growing storage needs. It can also simplify the planning and management of backup and recovery systems.
Web apps. IaaS provides all the infrastructure to support web apps, including storage, web and application servers, and networking resources. Organisations can quickly deploy web apps on IaaS and easily scale infrastructure up and down when demand for the apps is unpredictable.
High-performance computing. High-performance computing (HPC) on supercomputers, computer grids or computer clusters helps solve complex problems involving millions of variables or calculations. Examples include earthquake and protein folding simulations, climate and weather predictions, financial modelling and evaluating product designs.
Big data analysis. Big data is a popular term for massive data sets that contain potentially valuable patterns, trends and associations. Mining data sets to locate or tease out these hidden patterns requires a huge amount of processing power, which IaaS provides economically.
Advantages of IaaS
Eliminates capital expense and reduces ongoing cost. IaaS sidesteps the upfront expense of setting up and managing an on-site data centre, making it an economical option for start-ups and businesses testing new ideas.
Improves business continuity and disaster recovery. Achieving high availability, business continuity and disaster recovery is expensive, as it requires a significant amount of technology and staff. But with the right service level agreement (SLA) in place, IaaS can reduce this cost, meaning you can access applications and data as usual during a disaster or outage.
Innovate rapidly. As soon as you’ve decided to launch a new product or initiative, the necessary computing infrastructure can be ready in minutes or hours, rather than the days or weeks (and sometimes months) it could take to set up internally.
Respond more quickly to shifting business conditions. IaaS enables you to quickly scale up resources to accommodate spikes in demand for your application – during the holidays, for example – then scale resources back down again when activity decreases to save money.
Focus on your core business. IaaS frees up your team to focus on your organisation’s core business rather than on IT infrastructure.
Increase stability, reliability and supportability. With IaaS, there’s no need to maintain and upgrade software and hardware or troubleshoot equipment problems. With the appropriate agreement in place, the service provider ensures that your infrastructure is reliable and meets SLAs.
Better security. With the appropriate service agreement, a cloud service provider can provide security for your applications and data that may be better than what you can attain in-house.
Gets new apps to users faster. Because you don’t need to first set up the infrastructure before you can develop and deliver apps, you can get them to users faster with IaaS.
Platform as a Service (PaaS)
Platform as a service refers to cloud computing services that supply an on-demand environment for developing, testing, delivering and managing software applications. PaaS is designed to make it easier for developers to quickly create web or mobile apps, without worrying about setting up or managing the underlying infrastructure of servers, storage, network and databases needed for development.
Platform as a service (PaaS) is a complete development and deployment environment in the cloud, with resources that enable you to deliver everything from simple cloud-based apps to sophisticated, cloud-enabled enterprise applications. You purchase the resources you need from a cloud service provider on a pay-as-you-go basis and access them over a secure Internet connection.
Like IaaS, PaaS includes infrastructure – servers, storage and networking – but also middleware, development tools, business intelligence (BI) services, database management systems and more. PaaS is designed to support the complete web application life cycle: building, testing, deploying, managing, and updating.
PaaS allows you to avoid the expense and complexity of buying and managing software licences, the underlying application infrastructure and middleware, container orchestrators such as Kubernetes or the development tools and other resources. You manage the applications and services that you develop, and the cloud service provider typically manages everything else.
Common PaaS scenarios
Organisations typically use PaaS for these scenarios:
Development framework. PaaS provides a framework that developers can build upon to develop or customise cloud-based applications.
Similar to the way you create an Excel macro, PaaS lets developers create applications using built-in software components.
Cloud features such as scalability, high-availability and multi-tenant capability are included, reducing the amount of coding that developers must do.
Analytics or business intelligence. Tools provided as a service with PaaS allow organisations to analyse and mine their data, finding insights and patterns and predicting outcomes to improve forecasting, product design decisions, investment returns and other business decisions.
Additional services. PaaS providers may offer other services that enhance applications, such as workflow, directory, security and scheduling.
Advantages of PaaS
By delivering infrastructure as a service, PaaS offers the same advantages as IaaS. But its additional features (middleware, development tools and other business tools) give you more advantages:
Cut coding time. PaaS development tools can cut the time it takes to code new apps with pre-coded application components built into the platform, such as workflow, directory services, security features, search and so on.
Add development capabilities without adding staff. Platform as a Service components can give your development team new capabilities without your needing to add staff with the required skills.
Develop for multiple platforms – including mobile – more easily. Some service providers give you development options for multiple platforms, such as computers, mobile devices and browsers, making cross-platform apps quicker and easier to develop.
Use sophisticated tools affordably. A pay-as-you-go model makes it possible for individuals or organisations to use sophisticated development software and business intelligence and analytics tools that they could not afford to purchase outright.
Support geographically distributed development teams. Because the development environment is accessed over the Internet, development teams can work together on projects, even when team members are in remote locations.
Efficiently manage the application life cycle. PaaS provides all of the capabilities that you need to support the complete web application life cycle: building, testing, deploying, managing and updating within the same integrated environment.
Serverless Computing
Overlapping with PaaS, serverless computing focuses on building app functionality without spending time continually managing the servers and infrastructure required to do so. The cloud provider handles the setup, capacity planning, and server management for you. Serverless architectures are highly scalable and event-driven, only using resources when a specific function or trigger occurs.
Serverless computing enables developers to build applications faster by eliminating the need for them to manage infrastructure. With serverless applications, the cloud service provider automatically provisions, scales and manages the infrastructure required to run the code.
In understanding the definition of serverless computing, it’s important to note that servers are still running the code. The serverless name comes from the fact that the tasks associated with infrastructure provisioning and management are invisible to the developer. This approach enables developers to increase their focus on the business logic and deliver more value to the core of the business. Serverless computing helps teams increase their productivity and bring products to mar
Top benefits of serverless computing
No infrastructure management
Using fully managed services enables developers to avoid administrative tasks and focus on core business logic. With a serverless platform, you simply deploy your code, and it runs with high availability.
Dynamic scalability
With serverless computing, the infrastructure dynamically scales up and down within seconds to match the demands of any workload.
Faster time to market
Serverless applications reduce the operations dependencies on each development cycle, increasing development teams’ agility to deliver more functionality in less time.
More efficient use of resources
Shifting to serverless technologies helps organisations reduce TCO and reallocate resources to accelerate the pace of innovation.
Serverless Application Patterns
Developers build serverless applications using a variety of application patterns – many of which align with approaches that are already familiar – to meet specific requirements and business needs.
Serverless functions
Serverless functions accelerate development by using an event-driven model, with triggers that automatically execute code to respond to events and bindings to seamlessly integrate additional services. A pay-per-execution model with sub-second billing charges only for the time and resources it takes to execute the code.
Serverless Kubernetes
Developers bring their own containers to fully managed, Kubernetes-orchestrated clusters that can automatically scale up and down with sudden changes in traffic on spiky workloads.
Serverless workflows
Serverless workflows take a low-code/no-code approach to simplify orchestration of combined tasks. Developers can integrate different services (either cloud or on-premises) without coding those interactions, having to maintain glue code or learning new APIs or specifications.
Serverless application environments
With a serverless application environment, both the back end and front end are hosted on fully managed services that handle scaling, security and compliance requirements.
Serverless API gateway
A serverless API gateway is a centralised, fully managed entry point for serverless backend services. It enables developers to publish, manage, secure and analyse APIs at global scale.
Top benefits of serverless computing
No infrastructure management
Using fully managed services enables developers to avoid administrative tasks and focus on core business logic. With a serverless platform, you simply deploy your code, and it runs with high availability.
Dynamic scalability
With serverless computing, the infrastructure dynamically scales up and down within seconds to match the demands of any workload.
Faster time to market
Serverless applications reduce the operations dependencies on each development cycle, increasing development teams’ agility to deliver more functionality in less time.
More efficient use of resources
Shifting to serverless technologies helps organisations reduce TCO and reallocate resources to accelerate the pace of innovation.
Serverless Future
Why an end-to-end serverless platform is important.
A serverless approach offers developers, teams and organisations a level of abstraction that enables them to minimise the time and resources invested in infrastructure management.
Every component of an application benefits from this approach, from computing and the database engine to messaging, analytics and AI.
Using an end-to-end serverless platform that provides a comprehensive set of serverless technologies is the best way to ensure that the organisation gains the maximum benefit from going serverless.
Software as a service (SaaS)
Software as a service is a method for delivering software applications over the Internet, on demand and typically on a subscription basis. With SaaS, cloud providers host and manage the software application and underlying infrastructure, and handle any maintenance, such as software upgrades and security patching. Users connect to the application over the Internet, usually with a web browser on their phone, tablet or PC.
Software as a service (SaaS) allows users to connect to and use cloud-based apps over the Internet. Common examples are email, calendaring and office tools (such as Microsoft Office 365).
SaaS provides a complete software solution that you purchase on a pay-as-you-go basis from a cloud service provider. You rent the use of an app for your organisation, and your users connect to it over the Internet, usually with a web browser. All of the underlying infrastructure, middleware, app software and app data are located in the service provider’s data centre. The service provider manages the hardware and software, and with the appropriate service agreement, will ensure the availability and the security of the app and your data as well. SaaS allows your organisation to get up and running quickly with an app, at minimal upfront cost.
Common SaaS Scenarios
If you’ve used a web-based email service such as Outlook, Hotmail or Yahoo! Mail, then you’ve already used a form of SaaS. With these services, you log in to your account over the Internet, often from a web browser. The email software is located on the service provider’s network, and your messages are stored there as well. You can access your emails and stored messages from a web browser on any computer or Internet-connected device.
The previous examples are free services for personal use. For organisational use, you can rent productivity apps, such as email, collaboration and calendaring apps; and sophisticated business applications such as customer relationship management (CRM), enterprise resource planning (ERP) and document management applications. You pay for the use of these apps by subscription or according to the level of use.
Advantages of SaaS
Gain access to sophisticated applications. To provide SaaS apps to users, you don’t need to purchase, install, update or maintain any hardware, middleware or software. SaaS makes even sophisticated enterprise applications, such as ERP and CRM, affordable for organisations that lack the resources to buy, deploy and manage the required infrastructure and software themselves.
Only pay for what you use.
You also save money because the SaaS service automatically scales up and down according to the level of usage.
Use free client software.
Users can run most SaaS apps directly from their web browser without needing to download and install any software, although some apps require plug-ins. This means that you don’t need to purchase and install special software for your users.
Mobilize your workforce easily.
SaaS makes it easy to “mobilise” your workforce because users can access SaaS apps and data from any Internet-connected computer or mobile device. You don’t need to worry about developing apps to run on different types of computers and devices because the service provider has already done so. In addition, you don’t need to bring special expertise onboard to manage the security issues inherent in mobile computing. A carefully chosen service provider will ensure the security of your data, regardless of the type of device consuming it.
Access app data from anywhere.
With data stored in the cloud, users can access their information from any Internet-connected computer or mobile device. And when app data is stored in the cloud, no data is lost if a user’s computer or device fails.