TY - GEN
T1 - Serverless in the wild
T2 - 2020 USENIX Annual Technical Conference, ATC 2020
AU - Shahrad, Mohammad
AU - Fonseca, Rodrigo
AU - Goiri, Íñigo
AU - Chaudhry, Gohar
AU - Batum, Paul
AU - Cooke, Jason
AU - Laureano, Eduardo
AU - Tresness, Colby
AU - Russinovich, Mark
AU - Bianchini, Ricardo
N1 - Publisher Copyright:
Copyright © Proc. of the 2020 USENIX Annual Technical Conference, ATC 2020. All rights reserved.
PY - 2020
Y1 - 2020
N2 - Function as a Service (FaaS) has been gaining popularity as a way to deploy computations to serverless backends in the cloud. This paradigm shifts the complexity of allocating and provisioning resources to the cloud provider, which has to provide the illusion of always-available resources (i.e., fast function invocations without cold starts) at the lowest possible resource cost. Doing so requires the provider to deeply understand the characteristics of the FaaS workload. Unfortunately, there has been little to no public information on these characteristics. Thus, in this paper, we first characterize the entire production FaaS workload of Azure Functions. We show for example that most functions are invoked very infrequently, but there is an 8-order-of-magnitude range of invocation frequencies. Using observations from our characterization, we then propose a practical resource management policy that significantly reduces the number of function cold starts, while spending fewer resources than state-of-the-practice policies.
AB - Function as a Service (FaaS) has been gaining popularity as a way to deploy computations to serverless backends in the cloud. This paradigm shifts the complexity of allocating and provisioning resources to the cloud provider, which has to provide the illusion of always-available resources (i.e., fast function invocations without cold starts) at the lowest possible resource cost. Doing so requires the provider to deeply understand the characteristics of the FaaS workload. Unfortunately, there has been little to no public information on these characteristics. Thus, in this paper, we first characterize the entire production FaaS workload of Azure Functions. We show for example that most functions are invoked very infrequently, but there is an 8-order-of-magnitude range of invocation frequencies. Using observations from our characterization, we then propose a practical resource management policy that significantly reduces the number of function cold starts, while spending fewer resources than state-of-the-practice policies.
UR - http://www.scopus.com/inward/record.url?scp=85091934381&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85091934381&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:85091934381
T3 - Proceedings of the 2020 USENIX Annual Technical Conference, ATC 2020
SP - 205
EP - 218
BT - Proceedings of the 2020 USENIX Annual Technical Conference, ATC 2020
PB - USENIX Association
Y2 - 15 July 2020 through 17 July 2020
ER -