2020 · 21 citations · 19 references
ComputingCloud ComputingComputer ScienceCloud InfrastructureServerless ComputingVirtualizationCompute Resource ManagementHardware-assisted VirtualizationServerless ArchitectureServerless InfrastructureVirtualization ArchitectureEvent-driven InvocationEvent-driven ProgrammingLatency MinimizationPerformance OverheadPerformance Overhead Of ContainersServerless Function InvocationStartup LatencyVirtual Machines
Serverless computing, also known as “Function as a Service (FaaS)”, is emerging as an event-driven paradigm of cloud computing. In the FaaS model, applications are programmed in the form of functions that are executed and managed separately. Functions are triggered by cloud users and are provisioned dynamically through containers or virtual machines (VMs). The startup delays of containers or VMs usually lead to rather high latency of response to cloud users. Moreover, the communication between different functions generally relies on virtual net devices or shared memory, and may cause extremely high performance overhead. In this paper, we propose Unikernel-as-a-Function (UaaF), a much more lightweight approach to serverless computing. Applications are abstracted as a combination of different functions, and each function are built as an unikernel in which the function is linked with a specified minimum-sized library operating system (LibOS). UaaF offers extremely low startup latency to execute functions, and an efficient communication model to speed up inter-functions interactions. We exploit an new hardware technique (namely VMFUNC) to invoke functions in other unikernels seamlessly (mostly like inter-process communications), without suffering performance penalty of VM Exits. We implement our proof-of-concept prototype based on KVM and deploy UaaF in three unikernels (MirageOS, IncludeOS, and Solo5). Experimental results show that U aaF can significantly reduce the startup latency and memory usage of serverless cloud applications. Moreover, the VMFUNC-based communication model can also significantly improve the performance of function invocations between different unikernels.
19
Large-scale cluster management at Google with Borg
Abhishek Verma, Luis Pedrosa, Madhukar Korupolu et al. · 2015 · 1.3K citations · Full text
My VM is Lighter (and Safer) than your Container
Filipe Manco, Costin Lupu, Florian Schmidt et al. · 2017 · 270 citations · Full text
SAND: Towards High-Performance Serverless Computing.
İstemi Ekin Akkuş, Ruichuan Chen, Ivica Rimac et al. · 2018 · 209 citations
SOCK: rapid task provisioning with serverless-optimized containers
Edward Oakes, Leon Yang, Dennis Zhou et al. · 2018 · 192 citations