Platform-as-a-Service (PaaS)
solutions offer a cloud-based platform that allows developers to create
and deploy applications. They serve as the intermediary layer upon
which applications are constructed.
The middleware's primary job is to manage applications. PaaS
systems offer programs a runtime environment without providing any
services for controlling the underlying infrastructure. They
streamline the process of deploying applications to the infrastructure,
setting up application components, provisioning and configuring
supporting technologies like load balancers and databases, and
overseeing system changes according to user-defined policies.
Developers primarily focus on designing their systems based on
applications and do not have to worry about the
underlying hardware, whether it is physical or virtual, operating
systems, and other low-level services. The primary middleware is
responsible for overseeing the allocation of resources and dynamically
scaling applications based on user agreements.
From a user perspective, the core middleware provides
APIs that enable the programming and deployment of applications in
the cloud. These can manifest as either a Web-based interface or as
programming APIs and frameworks.
The different solutions can be classified into three
broad categories: PaaS-I, PaaS-II, and PaaS-III.
PaaS-I:
The initial category pertains to
PaaS solutions that fully adhere to the cloud computing paradigm for
the development and deployment of applications.
The platform provides a
comprehensive development environment that is accessible through a web
browser. This environment allows users to design, build, compose, and
deploy applications.
This pertains to the situation
involving Force.com and Longjump. Both platforms provide a combination
of middleware and infrastructure.
PaaS-II:
The second class comprises
solutions that primarily aim to offer a scalable infrastructure for Web
applications, particularly websites.
In this scenario, developers
typically utilize the application programming interfaces (APIs)
provided by the providers. These APIs are constructed on top of robust
runtimes specifically designed for industrial use, enabling developers
to create applications.
Google AppEngine is the leading
offering in this area. The platform offers a scalable runtime
environment that is built on the Java and Python programming languages.
These languages have been adapted to provide a safe runtime environment
and have been enhanced with new APIs and components to assist
scalability.
AppScale is an open-source
version of Google AppEngine that requires the installation of
interface-compatible middleware on a physical infrastructure.
The Joyent Smart Platform offers
a comparable methodology to that of Google AppEngine. Heroku and
Engine
Yard offer scalability support
specifically for websites built with Ruby and Ruby on Rails. In this
scenario, developers utilize conventional methodologies to design and
construct their applications, which are subsequently deployed by
uploading them onto the platform provided by the service
provider.
PaaS-III:
The third category encompasses
any systems that offer a cloud programming platform capable of
supporting other types of applications, beyond just Web apps. Out of
all these options, the most widely used is Microsoft Windows
Azure.
It offers a full framework for
creating cloud applications that are service-oriented.
These applications are built on top of the .NET technology and are
hosted on Microsoft's datacenters. Other systems in the same category,
such as Manjrasoft Aneka, Apprenda SaaSGrid, Appistry Cloud IQ
Platform, DataSynapse, and GigaSpaces DataGrid, offer middleware with
varying services.


No comments:
Post a Comment
Note: Only a member of this blog may post a comment.