Tech Word for The Week is a weekly series where we look to explain commonly used words in the tech ecosystem in a simple, engaging way.
What is Platform as a Service
Platform as a service is a part of cloud computing which enables developers to use deployment platforms to build, deploy and scale their applications. It’s a good choice for developers who are not interested in customising their underlying infrastructure and want to focus on coding and not DevOps (software development and IT operations) or system administration.
The cloud provider handles all of the backend infrastructure such as networking, middleware, virtualisation, the OS, runtime environment, servers and storage. PaaS provides a cost-effective cloud platform for developing, running, and scaling applications. PaaS products are easy to scale, rapidly iterate and promptly deploy.
Developers have access to certain tools, libraries and configuration settings. But they can’t modify the underlying operating system. Let’s ignore the technical terms for a bit. See yourself as a PaaS user. You want to host a Zoom meeting. On the app, you have access to some pre-configured features, tools, security options, storage and settings. Zoom is an Infrastructure as a Service provider. The people who attend your Zoom meeting are SaaS users. Catch the drift? Excellent!
Let’s break it down even further.
How IaaS, PaaS and SaaS work together
We cannot understand what PaaS is without understanding SaaS and IaaS. Imagine a triangle or pyramid divided into three parts. The lower part of the triangle is Infrastructure as a service (IaaS), the middle point is platform as a service (PaaS), and the upper point is software as a service (SaaS).
Iaas is a set of networking and storage resources that have been virtualised by a vendor. Users can access, configure and tweak to suit their purpose and intent. The people who use IaaS are System admin. or IT admin. The PaaS are built on IaaS.
Software as a service as the name implies is a software. You don’t have to install on your system or manually update. Anyone could be the user of a SaaS to create their content or service. It is usually charged on a subscription model rather than a one-time license fee.
PaaS is situated in the middle of IaaS and SaaS. It takes all of the advantages of the virtualised resources from IaaS, manages them so the user of a SaaS don’t have to worry about managing them. People who use PaaS are called Developers.
Another way to look at IaaS, PaaS and SaaS is from the angle of how three people who use a Toyota Camry. Now this car is used for ride hailing purposes. The 1st person (IaaS in this context) buys and therefore owns the car. He will do a lot of research and concern himself with the minutest detail of the car. Its capacity. Its horsepower. Its performance. Its durability, etc,.
The 2nd person (PaaS) user is a ride hailing driver who rents the Toyota Camry. He’s not as concerned with the specific details of the car. The owner (IaaS) has done that for him. But for the period of his rent, he’ll be responsible for buying fuel and maintaining the car.
The 3rd user (SaaS) worries least about the details of the car. Like anyone who orders an Uber, she orders it on the app. She doesn't care about the kind of the car, its colour or its horsepower. She’s also not bothered about the maintenance of the car. The 2nd person (SaaS) handles that. She pays based on how long she uses the car.
Benefits of Platform as a Service
- Fast and Easy: Platform as a service is easier and faster to develop, deploy and manage. They are simple and convenient for users.
- Freedom to create, experiment and delete: Users can ideate from one thing to the other on PaaS. They can test or try different languages, tools and operating systems without committing any significant investment in the running and managing of the underlying infrastructure.
- Fluid Flexibility to share with development team: There’s a shared software development environment that permits users to connect with their team to access, develop, operate and manage. All of this can be done from any location across the globe simply with an internet connection.
- Cost effective to scale: To scale an on-premise platform, you need to purchase additional compute, storage and network capacity in anticipation of high traffic. Oftentimes, this is expensive, wasteful and mostly inadequate. PaaS permits you to start small, purchase additional capacity and instantly deploy.
- Lower Cost: Generally, PaaS is more cost efficient to manage compared to on-premise platforms. They eliminate costs such as building costs, scaling costs, software licensing costs, and application management costs.
Available PaaS options
Popular PaaS providers where developers can build their applications include:
- Amazon Web Services
- Elastic Beanstalk
- Google App Engine
- Salesforce’s Heroku
- Red Hat Openshift
- Microsoft Azure
- Cloud Foundry etc
PaaS is a great option for Dev. looking to deploy their applications quickly without worrying about infrastructure. You will be able to access and benefit from all of the power and flexibility it provides.