Serverless in the Wild: Characterizing and Optimizing the Serverless Workload at a Large Cloud Provider

Characterize FaaS workloads → propose per-function keep-alive and pre-warm policies to cut cold starts

Featured image

Venue: ATC

Topic: Characterize real-world FaaS workloads and propose a practical resource management policy that reduces cold starts while using no more resources than current fixed keep-alive policies.


Summary

AWS Lambda and Azure Functions use a fixed keep-alive policy (10 and 20 minutes respectively) that ignores individual function invocation patterns, leading to cold starts and resource waste. After characterizing production FaaS workloads, a per-function keep-alive policy is proposed that adapts to actual invocation frequency and enables pre-warming just before predicted invocations.


Background

Cold starts in FaaS

Current keep-alive policies


Key Idea

Observation from production characterization

Proposed policy

  1. Per-function keep-alive: set a different keep-alive duration per function based on its actual invocation frequency and pattern.
  2. Pre-warming: for workloads with clear invocation patterns, the histogram predicts when to pre-warm a container just before the next invocation — turning a cold start into a warm start.

Implementation


Evaluation


Meeting Notes

(to be filled)