Platform as a service (PaaS) is a cloud computing model that provides customers a complete cloud platform—hardware, software and infrastructure—for developing, running and managing applications without the cost, complexity and inflexibility that often comes with building and maintaining that platform on premises.
The PaaS provider hosts everything—servers, networks, storage, operating system software, databases, development tools—at their data center. Typically customers can pay a fixed fee to provide a specified amount of resources for a specified number of users, or they can choose 'pay-as-you-go' pricing to pay only for the resources they use.
Either option enables PaaS customers to build, test, deploy run, update and scale applications more quickly and inexpensively than if they had had to build out and manage their own on-premises platform.
Every leading cloud service provider—including Amazon Web Services (AWS), Google Cloud, IBM Cloud and Microsoft Azure—has its own PaaS offering. Popular PaaS solutions are also available as open source projects (for example, Apache Stratos, Cloud Foundry) or from software vendors (for example, Red Hat OpenShift and Salesforce Heroku).
Read how desktop as a service (DaaS) enables enterprises to achieve the same level of performance and security as deploying the applications on premises.
Register for the guide on hybrid cloud
The most commonly cited benefits of PaaS, compared to an on-premises platform, include:
In general, PaaS solutions have three main parts:
Because PaaS delivers all standard development tools through the GUI online interface, developers can log in from anywhere to collaborate on projects, test new applications or roll out completed products. Applications are designed and developed right in the PaaS using middleware. With streamlined workflows, multiple development and operations teams can work on the same project simultaneously.
PaaS providers manage the bulk of your cloud computing services, such as servers, runtime and virtualization. As a PaaS customer, your company maintains management of applications and data.
Like PaaS, Infrastructure-as-a-Service (IaaS) and Software-as-a-Service (SaaS) are common cloud computing service models. In fact, it's common for an organization to use all three—even if they don't purchase all three specifically. To clarify:
IaaS is internet access to 'raw' IT infrastructure—physical servers, virtual machines, storage, networking and firewalls—hosted by a cloud provider. IaaS eliminates cost and the work of owning, managing and maintaining on-premises infrastructure. With IaaS, the organization provides its own application platform and applications.
Any PaaS offering necessarily includes the IaaS resources required to host it, even if those resources aren't discretely broken out or referred to as IaaS.
SaaS is application software that you use via the cloud, as if it were installed on your computer (sometimes, parts of it are installed on your computer). SaaS enables your organization to use an application without the expense of setting up the infrastructure to run it and the effort and personnel to maintain it (apply bug fixes and updates, address outages, and more.) Salesforce and Slack are examples of popular SaaS offerings. Most web applications are considered SaaS.
Every SaaS offering includes the IaaS resources required to host it and, at minimum, the PaaS components required to run it. Some SaaS vendors also provide a discrete PaaS that allows third parties to customize the SaaS offering.
By providing an integrated and ready-to-use platform and by enabling organizations to offload infrastructure management to the cloud provider and focus on building, deploying and managing applications, PaaS can ease or advance several IT initiatives, including:
Many cloud, software and hardware vendors offer PaaS solutions for building specific types of applications, or applications that interact with specific types of hardware, software or devices.
Run your container, application code, batch job or function on a fully managed container runtime with IBM Cloud Code Engine.
Deploy highly available, fully managed clusters with a click.
Modernize, build new apps, reduce costs and maximize ROI.
A microservices approach to application development can present significant challenges for any organization. But increasingly, microservices users agree that the results—including improved developer productivity, greater customer satisfaction and faster time to market—are well worth the effort.
Understand and compare the three most popular cloud computing service models.
Cloud computing lets you "plug into" infrastructure via the internet and use computing resources without installing and maintaining them on-premises.