PaaS is a cloud computing platform designed to enable organizations to deploy, provision and run applications without needing to build out the underlying infrastructure. In essence, the cloud provider delivers the infrastructure, while the organization either provides its own application or uses an application that has been made available by the cloud provider.
There are many PaaS providers to choose from, but these providers aren't created equal. Although most providers tend to offer the same basic set of services, many providers also have their own unique feature offerings and limitations. For example, a PaaS provider might choose to support Python, but not Java. Providers can also differ dramatically from one another in terms of pricing. As such, carefully assess the various PaaS providers to see which will best meet your needs before settling on a provider. To help, here's a breakdown of the top PaaS providers of 2022:
1. AWS Elastic Beanstalk
AWS Elastic Beanstalk is Amazon's native platform for deploying web applications. The service supports Java, .NET, PHP, Node.js, Python, Ruby, Go and Docker. Code can be hosted on Apache, Nginx, Passenger or IIS web servers.
Like many of the other PaaS options discussed here, Elastic Beanstalk is designed to act as a managed service that frees you from having to build out infrastructure or perform any complex configurations. It automatically handles scaling, load balancing, health monitoring and capacity provisioning. Amazon also makes it possible to use CPU metrics to scale an application up or down based on demand. One thing that makes Elastic Beanstalk unique is that although it's designed to act as a managed service, it also enables you to take manual control over the underlying infrastructure -- if you wish, for example, to configure a workload to run on a specific EC2 instance type.
This article is part of
2. Engine Yard
Engine Yard is a fully managed DevOps platform that is designed to simplify AWS, so you only need to write code and then push the code to the remote repository. Engine Yard handles all of the complexities associated with tasks such as containerizing the application and running the application on a Kubernetes cluster.
Besides handling the basic tasks associated with managing Kubernetes, Engine Yard also handles a variety of other low-level tasks, such as patch management, backups and automatically scaling an application based on its performance requirements. Applications that are hosted with Engine Yard are tied to Grafana, which provides basic resource metrics. Additionally, Engine Yard can provide automatic alerts for application failures and other conditions.
3. Google Cloud
Google App Engine is a platform that enables organizations to build their own application on top of a serverless platform. Google App Engine is fully managed and supports Node.js, Java, C#, Go, Python and PHP. Although these are the officially supported languages, Google supports bring your own language, and also lets customers use any library or framework through containerization.
Google App Engine is designed so you can build applications without regard for the underlying infrastructure. The serverless platform is fully managed and lets organizations scale their applications without having to do anything to the underlying infrastructure or perform complex configuration tasks.
Heroku is a container-based PaaS environment. Applications run inside of smart containers, which Heroku calls dynos, and Heroku handles all of the infrastructure requirement for those containers. This includes logging, security, failover and orchestration. Containers can be scaled horizontally or vertically, and application metrics are available to help monitor application response times.
Heroku offers PostgreSQL as a service, but applications can also use any of the numerous add-ons that Heroku makes available. Some of these add-ons include New Relic, MongoDB, SendGrid, Searchify, Fastly, Papertrail, ClearDB and MySQL. Heroku also supports the use of in-memory key value datastores.
From a developer standpoint, some of the more compelling features include GitHub integration and code and data rollback capabilities.
5. IBM Cloud
Like other major cloud platforms, such as AWS and Azure, IBM Cloud offers both PaaS and IaaS capabilities. There are two main PaaS options offered within the IBM Cloud.
The first of these services is IBM Red Hat OpenShift on IBM Cloud. This service is intended for those who want to develop cloud-native applications. This service can be used to provision and scale workloads and automate the update process. IBM also enables you to deploy managed, highly available clusters with a single click.
IBM's other platform is IBM Cloud Pak for Applications. This service is designed to help organizations modernize their existing applications.
6. Mendix aPaaS
The Mendix Application Platform as a Service (aPaaS) is designed to simplify the process of deploying applications through single-click deployment. Although many PaaS tools simplify the process of deploying an application to the cloud, Mendix is unique in that it supports public and private clouds, as well as on-premises environments.
Another difference between Mendix aPaaS and some of the other platforms is that Mendix doesn't concentrate solely on the deployment process. It also seeks to expedite the application development process. Mendix offers reusable application components so that you don't have to build applications from scratch. As such, Mendix aPaaS could be described as a low-code environment.
7. Microsoft Azure Pipelines
Like other hyperscalers, Microsoft Azure includes numerous services that could be classified as PaaS. One such service is Microsoft Azure Pipelines. Azure Pipelines is designed for extreme flexibility. It enables you to build applications with Node.js, Python, Java, PHP, Ruby, C/C++ and of course Microsoft .NET. Applications can be run in parallel on Windows, Linux and MacOS. The service also enables the development of iOS and Android apps.
Although it's easy to assume that Azure Pipelines is designed to deploy apps to the Azure Cloud, Azure Pipelines works with all of the major clouds including Azure, AWS and Google Cloud. The service also enables you to build and push images to container registries such as Docker Hub.
8. Red Hat OpenShift
Red Hat OpenShift is another Kubernetes-based PaaS option. Besides automating Kubernetes, OpenShift is designed to help organizations build applications more quickly. The software's source-to-image capabilities enable you to go straight from the application's code to a container.
Another nice thing about Red Hat OpenShift is that Red Hat provides an easy-to-use management console that lets you see and manage all of your Kubernetes clusters at once. Additionally, OpenShift is designed to provide a consistent experience, regardless of where the underlying OS is running.
9. VMware Cloud Foundry
VMware Cloud Foundry is a PaaS tool designed to simplify the process of running code on a Kubernetes cluster. One of the things that differentiates Cloud Foundry from some of the other Kubernetes PaaS tools is that Cloud Foundry is Kubernetes native. It enables apps to be run as OCI compliant container images and also works with other open source projects such as Envoy, Fluentd and Istio.
Cloud Foundry is designed to help you get started in less than 10 minutes, and because Cloud Foundry is lightweight, it can be containerized. This means you can choose between the Diego container scheduler or the standard Kubernetes scheduler.
10. Wasabi Cloud Storage
Wasabi is a cloud storage provider and isn't technically a PaaS platform. However, the Wasabi cloud can play a role in an organization's PaaS use. Even though PaaS seeks to simplify application deployment by offering infrastructure as a managed service, application data still must be stored somewhere. Although you can store data on the cloud that is hosting the application, storing data on the Wasabi cloud might be a less costly option.
Wasabi has partnerships with exchange providers such as Equinix, Flexential, Limelight Networks and Megaport. These partnerships enable Wasabi to offer direct, high speed connectivity to hyperscalers such as AWS, Google and Azure.