Serverless Computing / Cloud computing refers to a computing model that empowers developers to develop and execute applications without the need to provision, configure, or manage infrastructure. By delegating infrastructure management to a third party, serverless computing enables developers to focus efforts on creating code that directly adds value to the business.
While the concept of serverless computing can refer to a broad range of services, the type of serverless computing discussed in this paper executes functions in response to predefined events or triggers. Also called “functions as a service,” this type of cloud computing features short-lived functions that define applications that are executed within a serverless infrastructure.
IDC defines serverless / cloud computing as a model of computing that:
» Manages the provisioning and dynamic allocation of infrastructure resources as needed
» Uses discrete functions that execute in response to events or triggers that are defined by each application
» Charges customers by means of a utility pricing model similar to pay-as-you-go pricing models for cloud computing more generally
» Exhibits high availability
Serverless computing provides a fully managed deployment environment and encourages a microservices-style architecture (through the use of functions) that allows developers to rapidly deploy applications. Moreover, serverless computing optimizes application performance by managing the selection of the infrastructure, compute, storage, and networking resources required by each application. Because the selection of resources is dynamically managed (and abstracted from the user) for each application, serverless computing avoids over provisioning or under provisioning applications, thereby optimizing application performance and minimizing infrastructure-related costs.
Because cloud computing executes applications on demand instead of running applications persistently, IT resources are used only in response to the realization of customer-defined events or triggers. The model of serverless computing whereby applications are executed on demand, using event-based triggers, on fully managed cloud-based infrastructures delivers economic, operational, technical, and experiential benefits to customers and developers.
In a worldwide IDC survey of more than 3,000 developers, 55.7% of respondents professed to using or having firm plans to implement serverless computing on public cloud infrastructure, as illustrated in Figure 1.
IDC’s survey also found that respondents are educating themselves about and evaluating serverless computing. This data suggests that developers perceive serverless functions favorably and are actively taking steps to evaluate the functionality of serverless or cloud computing.