Serverless computing is an event-driven application design and deployment paradigm in which computing resources are provided as scalable cloud services. In traditional application deployments, the server’s computing resources represent fixed and recurring costs, regardless of the amount of computing work that is actually being performed by the server. In a serverless computing deployment, the cloud customer only pays for service usage; there is never any cost associated with idle, down-time.
Serverless computing does not eliminate servers, but instead seeks to emphasize the idea that computing resource considerations can be moved into the background during the design process. The term is often associated with the NoOps movement and the concept may also be referred to as "function as a service (Faas)” or “runtime as a service (RaaS)."
One example of public cloud serverless computing is the AWS Lambda service. Developers can drop in code, create backend applications, create event handling routines and process data – all without worrying about servers, virtual machines (VMs), or the underlying compute resources needed to sustain an enormous volume of events because the actual hardware and infrastructure involved are all maintained by the provider. AWS Lambda can also interact with many other Amazon services, allowing developers to quickly create and manage complex enterprise-class applications with almost no consideration of the underlying servers.