Cloud Computing Basics—Platform as a Service (PaaS)

Introducing PaaS

Cloud computing is still an evolving paradigm, but it is one of the most
disruptive innovations in the past few years. According to the definition from
NIST, it is the model to enable convenient and on-demand network access
to a shared pool of configurable computing resources, such as compute,
storage and network, that can be provisioned rapidly and released with
minimal management effort.

Cloud computing is composed of three service models: Software as a Service
(SaaS), Platform as a Service (PaaS) and Infrastructure as a Service
(IaaS). This article focuses on PaaS.

With PaaS, you can deploy applications into the cloud infrastructure using
supported programming languages (such as Java, PHP, Ruby and .Net) and
platforms/tools (such as Web servers/application servers and databases).
This enables PaaS
users or organizations to focus on their business and application
maintenance rather than having to worry about managing resources, platforms
and software versions.

PaaS resides within the space between SaaS and IaaS. IaaS provides
network, storage and compute processing capabilities. Examples of IaaS
offerings include Amazon EC2, Windows Azure VM Role and RackSpace Cloud
Servers. SaaS delivers business software capabilities, such as CRM.

PaaS is becoming popular because it eliminates the cost and complexity of
acquisition, installation, configuration, evaluation, experimentation
and management of all the hardware and software resources needed to run
business applications. PaaS provides the infrastructure and platform
needed to develop and run applications. By using PaaS, organizations can
utilize budgets to develop applications that provide real business value.

PaaS is driving a new era of innovation and business agility. Development
and IT teams use PaaS to design, experiment, build, test and deliver
customized applications. Hence, application developers and IT teams can
focus on application and domain expertise for their business, rather
than managing complex hardware and software resources.

Benefits of PaaS

Two significant benefits of using PaaS are cost benefits and faster
development and deployment cycles. PaaS provides agility, flexibility
and faster time to market to the development, testing and deployment
cycles and, hence, focus remains on the application and not in managing
resources. It ensures access to resources from anywhere in the world. By
using PaaS, user satisfaction increases, and at the same time, resource
utilization improves. It provides underlying software and hardware
resources on a pay-as-you-go billing model, so it reduces the capital
expenditure associated with large amounts of server and storage space,
power, cooling, management and maintenance of software updates and
changes, and skilled personnel. With almost zero capital expenditure,
horizontal or vertical scaling features can increase the application's
performance. It does not involve local installation, so adoption
speed is usually high. The PaaS platform ensures that consumers don't
need to keep investing in OS upgrades and maintenance. It is
the PaaS provider's responsibility to manage infrastructure and platform
resources so organizations don't need to worry about licenses,
versions of software, patch management and so on. Furthermore, flexibility
and availability of resources improves collaboration between the
development and testing teams.

Figure 4. PaaS Benefits

PaaS offers surprising benefits in deployment and management tasks
considering the fact that most organizations opt for PaaS solutions
based on the environment that is already standardized in their internal
environment.

How to Deploy Applications in PaaS

Here are the basic steps:

Select the application type, programming language for developing the
application, platform to run the application, build environment and so on.

Create business or Web applications using an IDE, such as Eclipse, NetBeans
or any other IDE.

Mitesh Soni has been associated with the Cloud Services Team for the past three years, which is a part of the Research and Innovation Group of iGATE. Currently, he is working there in the capacity as Technical Lead. He loves to write on technical and soci