Understanding PaaS in Cloud Computing
10 of 17 in Series: The Essentials of Services in Cloud Computing
There are many ways to approach cloud computing, depending on what business problem you’re trying to solve. When organizations are looking for capacity on demand, they often look to Infrastructure as a Service (IaaS). However, when an organization is looking for a deeper set of capabilities, they look at Platform as a Service (PaaS).
Although PaaS has many definitions, you can think about it as a computing platform that includes a set of development, middleware, and deployment capabilities. A key vendor characteristic is creating and encouraging a deep ecosystem of partners who all commit to this environment for the future.
The lines between Platform as a Service and Infrastructure as a Service can blur, but it has many characteristics worth mentioning.
Consider what all PaaS solutions have in common:
PaaS has to leverage the Internet.
PaaS must offer some type of development language so professional developers (and in some cases users) can add value.
These environments need a way to monitor and measure resource use and to track overall performance of the vendor’s platform.
Almost all PaaS platforms are based on a multi-tenancy architecture (which lets multiple clients run their copy separately from each other through virtualization) so that each customer’s code or data is isolated from others.
A PaaS environment needs to support the development lifecycle and the team development process, including testing.
A PaaS platform needs to include services interfaces such as SOAP (Simple Object Access Protocol) and XML (eXtensible Markup Language), among others.
A PaaS platform must be able to deploy, manage, test, and maintain the developed applications.
A PaaS platform must support well-defined and well-documented interfaces so elements and components can be used in the following:
Composite applications are created by combining services to create an enterprise application based on orchestration of business logic and rules.
Portals, which are an organized environment that organizes application components for the customer.
Mashups, which let end users easily bring together two or more business services that can communicate and exchange data.