Function as a service


Function as a service is a category of cloud computing services that provides a platform allowing customers to develop, run, and manage application functionalities without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app. Building an application following this model is one way of achieving a "serverless" architecture, and is typically used when building microservices applications.
FaaS was initially offered by various start-ups circa 2010, such as PiCloud.
AWS Lambda was the first FaaS offering by a large public cloud vendor, followed by , Microsoft Azure Functions, IBM/Apache's OpenWhisk in 2016 and Oracle Cloud Fn in 2017.

Use cases

Use cases for FaaS are associated with "on-demand" functionality that enables the supporting infrastructure to be powered down and not incurring charges when not in use. Examples include data processing, Internet of things services for Internet-connected devices, mobile applications, and web applications.

Comparison with PaaS application hosting services

application hosting services are similar to FaaS in that they also hide "servers" from developers. However, such hosting services typically always have at least one server process running that receives external requests. Scaling is achieved by booting up more server processes, which the developer is typically charged directly for. Consequently, scalability remains visible to the developer.
By contrast, FaaS does not require any server process constantly being run. While an initial request may take longer to be handled than an application hosting platform, caching may enable subsequent requests to be handled within milliseconds. As developers only pay for function execution time, lower costs at higher scalability can be achieved.