Serverless computing in clouds (part C) - Goh, Lisa Shannon (Nanyang Technological University, 2023)
FaaS, which stands for "Function as a Service," is becoming increasingly popular as a way of building and deploying cloud-based applications in which developers write and upload small, single-purpose functions that are executed on-demand. Instead of having to manually set up and manage virtual machines or containers, FaaS allows users to simply upload the code for their functions to the cloud and the provider creates a handle (e.g., a URL) for the code to be executed when certain events occur. This approach eliminates the need for users to pay for resources they do not use and shifts the responsibility of resource allocation to the cloud provider. However, there is the problem of cold starts, referring to when containers have to be initialized for function invocation, which increases the latency of execution. In this paper, we investigate the production workload of Azure Functions, and identify function invocation patterns that can be used to come up with a novel caching strategy to improve caching performance.