¿Qué es Functions as a Service (FaaS)?
Serverless Computing
¿Qué es el modelo Functions as a Service (FaaS)?
Functions as a Service or FaaS is a serverless computing execution model that allows developers to easily deploy and execute applications without any need to manage the servers. In summary, with FaaS, you write the code while the cloud provider automatically handles server deployment, resource allocation, and environment management.
How Does FaaS Work?
In the FaaS model, developers write code in the form of functions, which are small, independent chunks designed to perform a single operation. These functions are initiated by events, for instance, HTTP requests, database changes, or a file upload event. When an event occurs, the cloud provider immediately allocates the resources needed for the function and releases them after the function’s event is done. This computing model allows event-driven, serverless deployment, which means charging per function execution.
Some well-known FaaS providers are Amazon AWS Lambda, Microsoft Azure Functions, and Google Cloud Functions.
What is the Difference Between FaaS and SaaS?
FaaS y SaaS son modelos de implementación en el cómputo en la nube entorno, aunque tienen funciones diferentes.
- FaaS: Proporciona una plataforma para ejecutar código personalizado activado por eventos específicos. Los desarrolladores de aplicaciones controlan el código y la infraestructura, mientras que el escalado se gestiona automáticamente y al nivel más micro. Los costes se determinan por los recursos reales utilizados (pago por uso).
- SaaS: Proporciona soluciones de software preconfiguradas a través de una infraestructura en la nube. Los usuarios trabajan con la interfaz proporcionada, pero tienen un control limitado sobre la infraestructura subyacente. Esto se debe a que la escalabilidad suele estar limitada en los planes de suscripción, mientras que los costes suelen cobrarse en Suscripciones.
What is the Main Benefit of FaaS?
FaaS is a type of serverless computing where developers specifically are concerned with writing code and may have very little control over the servers. It allows adjusting the scale of activity and is based on an automatic mechanism of charging for use as a function of workload in an application.
What are the Disadvantages of FaaS?
A pesar de las ventajas que conlleva FaaS, es fundamental analizar algunas de sus desventajas.
- Dependencia del proveedor: There may be variations between how FaaS is implemented between different cloud suppliers, which might create difficulties in moving your application.
- Cold Starts: The initial commencement time of dormant functions can be prolonged, leading to feedback delay as far as the individuals are concerned.
- Debugging and Monitoring: A distributed serverless application can be more complex to debug and monitor than a monolithic application.
- Statelessness: Preserving state across the function’s executions is quite complex and additional effort should be taken when designing an application.
In spite of these disadvantages, FaaS is widely used when building hi-tech, scalable, and cost-effective applications, particularly in event-driven and client-centered frameworks.
Conclusión
FaaS is an extension of serverless architecture where developers can build and deploy applications without acquiring servers. FaaS conceals the infrastructure for the utilization of automated scaling, development circle, and resource based cost. You can deploy FaaS in developing event-driven and scalable cloud solutions, however it is not suitable for all types of applications.