This guide is focused on serverless applications. On occasion, serverless apps are called “serverless functions”, “lambda apps,” or “cloud functions.” In a few sections, we’ll get a little clarity on those terms, but here we will introduce the concept of serverless apps.
In the previous section, we provided three definitions of the word “serverless,” and pointed out that the third definition is the one we use when we talk about serverless apps. To reiterate the definition of a serverless app:
An app is a serverless app when the developer does not need to write the software server (sometimes called a daemon) or handle the long-running process that listens for requests on a network.
A serverless app is a thing that runs inside of an environment that manages all of the protocol-level and process-level aspects of serving content. Additionally, that serverless environment provides a layer of secure isolation from other serverless apps. In the strongest cases, this allows multitenant hosting, where two different customers or users can run their apps on the same serverless app platform without fear that the other users or customers can tamper with the app.
A serverless app is the piece of software you, as the developer, write and upload to a serverless application platform. And the code you write is started when a new request is received. Your code is expected to handle that request and perhaps return a response, at which point your code is shut down again (ready to be started again in the future).Browse Chapters