Plataforma como servicio ( PaaS ) o plataforma de aplicaciones como servicio ( aPaaS ) o servicio basado en plataforma es una categoría de servicios de computación en la nube que permite a los clientes aprovisionar, crear instancias, ejecutar y administrar un paquete modular que comprende una plataforma informática y uno o más aplicaciones, sin la complejidad de construir y mantener la infraestructura típicamente asociada con el desarrollo y lanzamiento de las aplicaciones, y para permitir a los desarrolladores crear, desarrollar y empaquetar dichos paquetes de software . [1] [2]
PaaS se puede entregar de tres maneras:
La primera [5] plataforma pública como servicio fue Zimki, lanzada por Fotango, una empresa con sede en Londres propiedad de Canon Europa . Fue desarrollado en 2005, tuvo un lanzamiento beta en marzo de 2006 y un lanzamiento público en EuroOSCON en 2006. [6]
En el momento de su cierre, Zimki tenía varios miles de cuentas de desarrollador. Había demostrado la viabilidad técnica de la plataforma como servicio, pero también había proporcionado el primer ejemplo de los peligros de depender de un solo proveedor. [7] Esto se destacó cuando el CEO ( Simon Wardley , conocido por los mapas de Wardley ) anunció en OSCON 2007 que Zimki ya no sería de código abierto y discutió el futuro de lo que entonces se llamaba framework-as-a-service (más tarde llamado framework-as-a-service). plataforma como servicio) que aborda la importancia de un mercado de proveedores basado en un modelo de referencia de código abierto. [8]
La intención original de PaaS era simplificar la escritura de código, con la infraestructura y las operaciones a cargo del proveedor de PaaS. Originalmente, todos los PaaS estaban en la nube pública. Como muchas empresas no querían tener todo en la nube pública, se crearon opciones PaaS privadas e híbridas (gestionadas por departamentos de TI internos). [9]
PaaS proporciona un entorno para que los desarrolladores y las empresas creen, alojen e implementen aplicaciones, salvando a los desarrolladores de las complejidades de la infraestructura (instalación, configuración y gestión de elementos como servidores y bases de datos). PaaS puede mejorar la velocidad de desarrollo de una aplicación y permitir al usuario centrarse en la aplicación misma. Con PaaS, el cliente gestiona las aplicaciones y los datos, mientras que el proveedor (en el PaaS público) o el departamento de TI (en el PaaS privado) gestiona el tiempo de ejecución , el middleware , el sistema operativo , la virtualización , los servidores , el almacenamiento y las redes . [3] [10] Las herramientas de desarrollo proporcionadas por el proveedor se personalizan según las necesidades del usuario. [11] El usuario puede optar por mantener el software o que el proveedor lo mantenga. [3]
Las ofertas de PaaS también pueden incluir instalaciones para el diseño de aplicaciones, desarrollo, prueba e implementación de aplicaciones, así como servicios como colaboración en equipo , integración y clasificación de servicios web , integración de bases de datos, seguridad, escalabilidad, almacenamiento, persistencia, gestión de estado, control de versiones de aplicaciones, instrumentación de aplicaciones y facilitación de la comunidad de desarrolladores. Además de los aspectos de ingeniería de servicios, las ofertas de PaaS incluyen mecanismos para la gestión de servicios, como supervisión, gestión del flujo de trabajo, descubrimiento y reserva. [12] [13]
Las ventajas de PaaS son principalmente que permite una programación de nivel superior con una complejidad drásticamente reducida; el desarrollo general de la aplicación puede ser más efectivo, ya que tiene recursos de infraestructura incorporados/aumentables y descendentes; y el mantenimiento y mejora de la aplicación es así más fácil.
Las desventajas de varios proveedores de PaaS citadas por sus usuarios incluyen aumento de precios a mayor escala, [14] falta de características operativas, [15] control reducido, [15] y las dificultades de los sistemas de enrutamiento del tráfico. [dieciséis]
Existen varios tipos de PaaS, incluidos los públicos, privados e híbridos. [9] PaaS fue originalmente pensada para aplicaciones en servicios de nube pública, antes de expandirse para incluir opciones privadas e híbridas. [9]
La PaaS pública se deriva del software como servicio (SaaS) [17] y se sitúa en la computación en la nube entre SaaS y la infraestructura como servicio (IaaS). [1] SaaS es un software alojado en la nube para que no ocupe espacio en el disco duro de las computadoras de los usuarios. IaaS proporciona hardware virtual de un proveedor con escalabilidad ajustable. [1] Con IaaS, el usuario aún tiene que administrar el servidor, mientras que con PaaS la administración del servidor la realiza el proveedor. [18]
Por lo general, una PaaS privada se puede descargar e instalar en el centro de datos local de una empresa o en una nube pública. Una vez que el software está instalado en una o más máquinas, la PaaS privada organiza los componentes de la aplicación y la base de datos en una única plataforma de alojamiento. [19]
La PaaS híbrida suele ser una implementación que consta de una combinación de implementaciones públicas y privadas.
Una plataforma de comunicaciones como servicio (CPaaS) es una plataforma basada en la nube que permite a los desarrolladores agregar funciones de comunicaciones en tiempo real (voz, video y mensajería) en sus propias aplicaciones sin crear infraestructuras ni interfaces de back-end. [20] Además, CPaaS y las especificaciones de hardware y software están diseñadas específicamente para soportar aplicaciones de (te)comunicaciones. Estas aplicaciones y su uso son mucho más sensibles a la fluctuación, la latencia y la pérdida de paquetes. Las aplicaciones PBX alojadas , redes celulares (casi en tiempo real) generalmente se implementan en plataformas CPaaS.
Iniciada en 2012, la PaaS móvil (mPaaS) proporciona capacidades de desarrollo para diseñadores y desarrolladores de aplicaciones móviles. [21] El Yankee Group identificó mPaaS como uno de sus temas para 2014. [22] [23]
Open PaaS no incluye alojamiento, pero proporciona software de código abierto que permite a un proveedor de PaaS ejecutar aplicaciones en un entorno de código abierto, como Google App Engine . Algunas plataformas abiertas permiten al desarrollador utilizar cualquier lenguaje de programación, base de datos, sistema operativo o servidor para implementar sus aplicaciones. [24]
Existen varios tipos de proveedores de PaaS. Todos ofrecen alojamiento de aplicaciones y un entorno de implementación, junto con varios servicios integrados. Los servicios ofrecen distintos niveles de escalabilidad y mantenimiento. [25] Los desarrolladores pueden escribir una aplicación y cargarla en una PaaS que admita el lenguaje de software de su elección, y la aplicación se ejecuta en esa PaaS. [26]
{{cite book}}
: Mantenimiento CS1: varios nombres: lista de autores ( enlace )