Cloud Computing Concepts:
as a Service (PaaS) is a service model in Cloud computing that provide platform and environment to allow developers to build applications and services over the internet.
This model offers the runtime environment for applications. It also offers development & deployment tools, required to develop
applications. PaaS has a feature of point-and-click
tools that enables non-developers to create web applications.
PaaS services are hosted in the cloud and
accessed by users simply via their web
Platform as a Service allows users to create
software applications using tools supplied by the provider. PaaS services can
consist of preconfigured features that customers can subscribe to; they can
choose to include the features that meet their requirements while discarding
those that do not.
Packages can vary from offering simple
point-and-click frameworks where no client side hosting expertise is required
to supplying the infrastructure options for advanced development.
The infrastructure and applications are managed
for customers and support is available. Services are constantly updated, with
existing features upgraded and additional features added
App Engine, Force.com are
examples of PaaS offering vendors. Developer may log on to these websites and
use the built-in API to create web-based applications.
PaaS services are generally paid for on a
subscription basis with clients ultimately paying just for what they use
Clients also benefit from the economies of scale
that arise from the sharing of the underlying physical infrastructure between
users, and that results in lower costs.
Features of PaaS:
Server-side scripting environment
Database management system
Tools for design and development
Benefits of PaaS:
possible for non-experts: with some PaaS offerings anyone can develop an
application. They can simply do this through their web browser utilizing
one-click functionality. Salient examples of this are one-click blog software
installs such as WordPress.
They don’t have to
invest in physical infrastructure: being able to ‘rent’ virtual infrastructure has both cost benefits and practical
benefits. They don’t need to purchase hardware themselves or employ the
expertise to manage it. This leaves them free to focus on the development of
applications. What’s more, clients will only need to rent the resources they
need rather than invest in fixed, unused and therefore wasted capacity.
customers can have control over the tools that are installed within their
platforms and can create a platform that suits their specific requirements.
They can ‘pick and choose’ the
features they feel are necessary.
Teams in various
locations can work together: as an internet connection and web browser are
all that is required, developers spread across several locations can work
together on the same application build.
security is provided, including data security and backup and recovery.
Features can be changed if circumstances dictate that they should.
Here are the characteristics of PaaS service model:
PaaS offers browser
based development environment. It allows the developer to create database
and edit the application code either via Application Programming Interface or point-and-click tools.
PaaS provides built-in security, scalability,
and web service interfaces.
PaaS provides built-in tools for defining workflow and approval processes and
defining business rules.
It is easy
to integrate with other applications on the same platform.
PaaS also provides web services interfaces that
allow us to connect the applications outside the platform.
of paas applications: Since the PaaS applications are dependent on network,
PaaS applications must explicitly use cryptography and manage security
Lack of portability
between PaaS clouds: Although standard languages are used yet the
implementations of platforms services may vary. For example, file, queue, or
hash table interfaces of one platform may differ from another, making it
difficult to transfer workloads from one platform to another.
Event based processor
scheduling: The PaaS applications are event oriented which poses resource
constraints on applications, i.e., they have to answer a request in a given
interval of time.