Close

Platform as a service

How platform as a service (PaaS) empowers modern agile and DevOps teams

Kev Zettler Headshot
Kev Zettler

Full Stack Web Developer


Platform as a service (PaaS) is a cloud infrastructure layer that provides resources to build user-level tools and applications. It includes the underlying infrastructure including compute, network, and storage resources, as well as development tools, database management systems, and middleware.

Today’s software development teams now have immediate access to all the resources needed to support the entire application lifecycle, including to design, develop, test, deploy, and host applications. This can all be done directly from the cloud with platform as a service (PaaS). Teams have access to the resources they need, on-demand, without the need to purchase and maintain a complex on-premise infrastructure. 

PaaS is a primary tier of modern cloud infrastructures. The base stack is infrastructure as a service (IaaS), which provides compute, network, and storage resources. PaaS is at the middle of the stack between IaaS and software as a service (SaaS). PaaS is dependent on IaaS but also enables SaaS.

¿Qué es la plataforma como servicio?


Diagrama de plataforma como servicio

La PaaS es una capa de infraestructura en la nube que proporciona recursos para desarrollar herramientas y aplicaciones a nivel de usuario. Al igual que la IaaS, entre dichos recursos se incluyen servidores, almacenamiento y conectividad. La PaaS también incluye herramientas de desarrollo, sistemas de gestión de bases de datos, software intermedio, sistemas de correo electrónico o notificaciones, etc.

Dado que la PaaS es una infraestructura basada en la nube, permite a las organizaciones evitar el coste y la complejidad de comprar y gestionar los recursos de infraestructura, incluidas las licencias de software, la infraestructura de aplicaciones y las herramientas de desarrollo.

La “plataforma” en PaaS se refiere a un ecosistema de lenguaje de programación o “pila de recursos tecnológicos”. Entre las pilas de recursos tecnológicos de aplicaciones basadas en lenguajes populares se incluyen Ruby on Rails, Django (Python), MEAN stack (Node.js) y SpringMVC (Java), entre otros. Estos ejemplos de pilas de lenguajes dependen de un sistema de base de datos adjunto.

admin-cloud icon
related material

Infrastructure as a service

three rings Icon
SEE SOLUTION

Manage your distributed architecture with Compass

Benefits of platform as a service


Like other cloud services, PaaS provides resources on-demand that can scale as needed. Prior to this, teams needed to purchase their own hardware, then configure the servers, databases, firewalls, and all other components themselves. Teams would then have to maintain, scale, and monitor their custom infrastructure. There are also a host of other benefits to PaaS.

Empowers agile and DevOps practices

PaaS enables faster coding, testing, and deployment -- some of the key practices of agile and DevOps teams. Plus, PaaS is directly complementary to a CI/CD release workflow and helps to enable a full DevOps release cycle. Given the software lifecycle of building, testing, deploying, managing, and updating, PaaS handles the deployment phase.

Plazo de comercialización reducido

Al utilizar la plataforma como servicio, los desarrolladores se pueden centrar exclusivamente en el código, en lugar de en desarrollar, configurar y aprovisionar la infraestructura y las plataformas, o en desarrollar la funcionalidad de escalado automático, lo cual reduce de forma significativa el tiempo que se tarda en desarrollar proyectos nuevos. Además, la PaaS ofrece acceso a herramientas, plantillas y bibliotecas de código que pueden reducir el tiempo de desarrollo y simplificar los procesos.

Posibilidad de escalar según sea necesario

Los hosts de PaaS suelen ofrecer funciones de escalado elástico, lo que permite a los equipos añadir capacidad con rapidez en los momentos de mayor actividad y reducirla cuando sea necesario. El proveedor de PaaS gestiona automáticamente el escalado.

Desarrollo rentable

La PaaS permite a los equipos añadir capacidades de desarrollo sin agregar personal, lo que puede reducir los costes de ingeniería. Las organizaciones ya no tienen que instalar y gestionar las infraestructuras de desarrollo subyacentes.

Los proveedores de plataformas como servicio ofrecen paneles útiles para analizar y gestionar el coste de las infraestructuras. Estas herramientas de análisis de costes ayudan a los equipos a controlar cualquier área de gastos inesperados o innecesarios, además de a optimizar el coste de sus implementaciones. Sin esta información sobre los costes, los equipos se pueden encontrar con que sus gastos de infraestructura aumentan de forma inesperada.

Ayuda para los equipos de desarrollo distribuidos

Dado que la plataforma como servicio es un servicio en la nube, facilita la colaboración entre equipos distribuidos. Los proveedores de plataformas como servicio disponen de hardware distribuido a nivel mundial, lo que significa que se puede acceder a las aplicaciones implementadas en PaaS con costes menores y desde cualquier lugar.

Seguridad y control de acceso

La mayoría de los proveedores de PaaS tienen herramientas de seguridad y control de acceso granulares que permiten a los equipos configurar con rapidez el acceso a los recursos de PaaS. Esto es importante para los niveles de acceso de los equipo de seguridad de la empresa y del cliente, ya que les ofrece la garantía de que su infraestructura está bloqueada para evitar filtraciones de datos u otras situaciones de fallos de seguridad no deseados.

Casos de uso de la plataforma como servicio


La PaaS se utiliza para implementar ejecutables de código de aplicación listos para el usuario, entre los que se incluyen aplicaciones web SaaS completas, como CRM, paneles, salas de chat, etc. Los ejecutables PaaS también incluyen API de backend o microservicios. Además del código de la aplicación, se pueden implementar herramientas complementarias, como equilibradores de carga, canalizaciones de notificación y sistemas de trabajo diferido, junto con el código de la aplicación.

Desarrollo y gestión de API

Las API son un componente esencial de cualquier aplicación distribuida moderna; además, los marcos integrados que proporciona una PaaS simplifican mucho el desarrollo y la gestión de las API. Las API se suelen utilizar para permitir que los sistemas externos se conecten con los recursos internos de las aplicaciones o para conectar los diferentes componentes de una arquitectura de aplicación de microservicios.

Microservicios

La PaaS es complementaria a los microservicios y sirve de gran ayuda en la implementación. Facilita la implementación de diversas aplicaciones de microservicios y su configuración para que se comuniquen entre sí. La mayoría de los proveedores de PaaS cuentan con paneles en la interfaz de usuario que proporcionan una descripción visual de la implementación actual, lo que permite a los equipos ver y comprender mejor la disposición de la implementación de microservicios en directo.

Entornos con varias fases

La PaaS puede implementar rápidamente entornos con varias fases, como el desarrollo, el ensayo y la producción, lo que proporciona a los equipos una mayor garantía de calidad, ya que pueden verificar el comportamiento correcto de la aplicación a través de varias fases. Si la aplicación se comporta como se espera en el entorno de ensayo, lo normal es que se implemente en el entorno de producción.

Alojamiento de bases de datos

La mayoría de las aplicaciones dependen de algún tipo de almacén de datos persistente. Dado que esto es muy común, los proveedores de PaaS ofrecen la implementación y la gestión de bases de datos como una funcionalidad básica. Los equipos pueden prescindir del alojamiento de aplicaciones de la PaaS y, en su lugar, utilizar dicha plataforma únicamente para acceder a la base de datos. Este patrón es tan habitual que algunos proveedores de PaaS ofrecen planes de facturación específicos para la funcionalidad de la base de datos solamente.

Análisis o inteligencia empresarial

La mayoría de las ofertas de PaaS facilitan de manera considerable la vida de los desarrolladores al incluir aplicaciones y marcos para realizar análisis y aplicar la inteligencia empresarial. Estas soluciones simplifican a los desarrolladores de aplicaciones la tarea de proporcionar a los usuarios todos los datos y métricas que necesitan para tomar decisiones empresariales con conocimiento de causa.

Comunicaciones

Las capacidades de comunicación resultan esenciales para cualquier aplicación moderna, y una PaaS proporciona herramientas y marcos de comunicación para admitir tecnologías como mensajes de texto, correos electrónicos, mensajes de voz, etc., que facilitan a los desarrolladores la tarea de añadir funcionalidades de comunicación a sus aplicaciones.

Herramientas internas y paneles privados

Las herramientas internas son candidatas perfectas para implementar la PaaS, ya que no requieren dependencias de infraestructura especiales y únicas. Las herramientas internas añaden vistas de las métricas internas y no requieren un escalado elástico y avanzado, ya que a ellas accede un subconjunto de partes interesadas internas. Aun así, la PaaS proporciona un escalado elástico de forma predeterminada.

En conclusión...


La PaaS ofrece recursos de infraestructura y desarrollo a equipos de desarrollo pequeños y grandes por igual. Les permite acceder a los recursos que necesitan, cuando los necesitan, y escalar en consecuencia. La PaaS permite una ejecución más rápida y publicaciones de software más frecuentes, lo que la convierte en la tecnología favorita de los equipos que practican la metodología ágil y la DevOps.

¿Todo listo para integrar la PaaS con tu flujo de trabajo de DevOps? Empieza a trabajar con DevOps


Kev Zettler
Kev Zettler

Kev es un coordinador de desarrollo web de pila completa y emprendedor en serie con más de una década de experiencia en la creación de productos y equipos con metodologías ágiles. Es un entusiasta colaborador, escritor y formador en tecnologías emergentes de código abierto como DevOps, criptomonedas y realidad virtual y aumentada. En su tiempo libre, participa en sesiones de desarrollo de videojuegos independientes.


Share this article

Recommended reading

Bookmark these resources to learn about types of DevOps teams, or for ongoing updates about DevOps at Atlassian.

Devops illustration

Compass community

overcoming obstacles illustration

Tutorial: Create a component

Map illustration

Get started with Compass for free

Sign up for our DevOps newsletter

Thank you for signing up