FaaS (Functions as a Service)
FaaS, o Funciones como Servicio, se conoce como serverless architecture. Por serverless se entiende que los servidores se utilizan como un elemento más de la infraestructura gracias a las ventajas de la computación en la Nube —y no significa «sin servidor», como podría suponerse.
Esta arquitectura permite la ejecución de aplicaciones a través de contenedores efímeros. Dichos contenedores se crean en el momento, de manera que el desarrollador no se ha de preocupar de la gestión de la infraestructura sobre la que se ejecuta su función, centrándose, por tanto, en la funcionalidad.
Con la arquitectura serverless se simplifica el ciclo de desarrollo y, por otro lado, favorece el desarrollo de arquitecturas basadas en microservicios, facilitando el ciclo de vida y los despliegues continuos.
Con FaaS podemos reducir la inversión en infraestructura y, además, solo se generan costes cuando se utiliza el servicio, esto es, cuando se ejecuta la función.
PaaS (Platform as a Service)
PaaS son las siglas de Plataforma como Servicio, que proporciona una plataforma y un entorno que permiten a los desarrolladores crear aplicaciones y servicios. Estas aplicaciones y servicios se pueden crear gracias a las herramientas que proporciona el proveedor, por ejemplo, mediante funcionalidades preconfiguradas por suscripción que permitan al cliente elegir cuáles va a utilizar. Estos paquetes de funcionalidades pueden ser de todo tipo, desde las más sencillas e intuitivas hasta opciones de desarrollo avanzado.
Se pueden entender mejor estos servicios PaaS describiendo algunas de las algunas de las funcionalidades que suelen incluir: sistema operativo, sistema de gestión de base de datos, software de servidor, soporte técnico, almacenamiento, hosting o herramientas de diseño y desarrollo, además de acceso a la red.
Con PaaS, los desarrolladores no necesitan invertir en infraestructura física, ni emplear tiempo en administrarlo, concentrándose exclusivamente en sus desarrollos. Los servicios PaaS proporcionan un entorno de trabajo para el desarrollo de aplicaciones.
SaaS (Software as a Service)
Los usuarios simplemente acceden al software con un thin client a través de un navegador web. Todo está gestionado por el proveedor de servicio: aplicaciones, sistema en tiempo de ejecución, datos, middleware, sistemas operativos, virtualización, servidores, almacenamiento, redes… El usuario tan solo contrata el servicio —o accede a él de forma gratuita— y utiliza el software de inmediato.
Sin duda, es el servicio más utilizado por usuarios individuales. El SaaS, o
Software as a Service, es también conocido como software bajo demanda, o software out-of-the-box. Se trata de un servicio que ofrece a los usuarios una aplicación determinada que pueden utilizar inmediatamente, sin necesidad de instalar nada, de hacer ningún despliegue, ni de llevar su mantenimiento.