Platform as a service


Platform as a service or application platform as a service or platform-based service is a category of cloud computing services that provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.

Development and uses

PaaS can be delivered in three ways:
The first public platform as a service was Zimki, launched by Fotango, a London-based company owned by Canon Europe. It was developed in 2005, had a beta launch in March 2006 and a public launch at EuroOSCON in 2006. Zimki was an end-to-end JavaScript platform for web application development and utility computing that removed the repetitive tasks of creating web applications and web services. Zimki automated all aspects of infrastructure and operations, from provisioning and setting up virtual servers, scaling, configuration, security and backups. Zimki introduced the tagline "" to describe the removal of all these repetitive tasks.
Zimki was a pure "pay as you go" code execution platform which allowed developers to build and deploy applications or web services without start-up costs, on a true utility-based computing platform. Charging was based on used storage, network traffic and JSOPs. It was multitenant platform where developers could create applications by using a single language - Javascript. All development, billing, monitoring and application control were exposed through APIs. There were a range of component services such as No-SQL object store and Message Queue services. All functions in Zimki could be exposed as web services, and Zimki provided billing analysis down to individual functions.
While Zimki was rapidly growing and Fotango was profitable, the parent company decided that this area was not its core and closed the service in December 2007. At the time of its closure, Zimki had several thousand developer accounts. It had demonstrated the technical viability of Platform as a Service, but also provided the first example of the perils of being dependent on a single provider. This was highlighted when the CEO announced at OSCON 2007 that Zimki would no longer be open-sourced and discussed the future of what was then called framework-as-a-service covering the importance of a market of providers based on an open source reference model.
In April 2008, Google launched App Engine, with a free trial version limited to 10,000 developers. This was said to have "turned the Internet cloud computing space into a fully-fledged industry virtually overnight."
The original intent of PaaS was to simplify writing of code, with the infrastructure and operations handled by the PaaS provider. Originally, all PaaSes were in the public cloud. Because many companies did not want to have everything in the public cloud, private and hybrid PaaS options were created.
PaaS provides an environment for developers and companies to create, host and deploy applications, saving developers from the complexities of infrastructure. PaaS can improve the speed of developing an app, and allow its user to focus on the application itself. With PaaS, the customer manages applications and data, while the provider or IT department manages runtime, middleware, operating system, virtualization, servers, storage and networking. Development tools provided by the vendor are customized according to the needs of the user. The user can choose to maintain the software, or have the vendor maintain it.
PaaS offerings may also include facilities for application design, application development, testing and deployment, as well as services such as team collaboration, web service integration, and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation, and developer community facilitation. Besides the service engineering aspects, PaaS offerings include mechanisms for service management, such as monitoring, workflow management, discovery and reservation.

Advantages and disadvantages

The advantages of PaaS are primarily that it allows for higher-level programming with dramatically reduced complexity; the overall development of the application can be more effective, as it has built-in/self up-and-down ramping infrastructure resources; and maintenance and enhancement of the application is thus easier.
Disadvantages of various PaaS providers as cited by their users include increased pricing at larger scales, lack of operational features, reduced control, and the difficulties of traffic routing systems.

Types

Public, private and hybrid

There are several types of PaaS, including public, private and hybrid. PaaS was originally intended for applications on public cloud services, before expanding to include private and hybrid options.
Public PaaS is derived from software as a service, and is situated in cloud computing between SaaS and infrastructure as a service. SaaS is software hosted in the cloud, so that it does not take up hard drive space on the computers of users. IaaS provides virtual hardware from a provider with adjustable scalability. With IaaS, the user still has to manage the server, whereas with PaaS the server management is done by the provider.
A private PaaS can typically be downloaded and installed either in a company's on-premises data center, or in a public cloud. Once the software is installed on one or more machines, the private PaaS arranges the application and database components into a single hosting platform.
Hybrid PaaS is typically a deployment consisting of a mix of public and private deployments.

Communications platform as a service

A communications platform as a service is a cloud-based platform that enables developers to add real-time communications features in their own applications without building back-end infrastructure and interfaces. Also, CPaaS and hardware and software specifications are specifically designed to support communications applications. These applications and their usage are much more sensitive to jitter, latency and packet losses. Hosted PABX, cellular networks, applications typically are deployed on CPaaS platforms.

Mobile platform as a service

Initiated in 2012, mobile PaaS provides development capabilities for mobile app designers and developers. The Yankee Group identified mPaaS as one of its themes for 2014.

Open PaaS

Open PaaS does not include hosting, but provides open source software allowing a PaaS provider to run applications in an open source environment, such as Google App Engine. Some open platforms let the developer use any programming language, database, operating system or server to deploy their applications.

Providers

There are various types of PaaS providers. All offer application hosting and a deployment environment, along with various integrated services. Services offer varying levels of scalability and maintenance. Developers can write an application and upload it to a PaaS that supports their software language of choice, and the application runs on that PaaS.