FaaSKeeper: Learning from Building Serverless Services with ZooKeeper as an Example
Marcin Copik, Alexandru Calotoiu, Pengyu Zhou, Konstantin Taranov, Torsten Hoefler
Abstract
FaaS (Function-as-a-Service) revolutionized cloud computing by replacing persistent virtual machines with dynamically allocated resources. This shift trades locality and statefulness for a pay-as-you-go model more suited to variable and infrequent workloads. However, the main challenge is to adapt services to the serverless paradigm while meeting functional, performance, and consistency requirements. In this work, we push the boundaries of FaaS computing by designing a serverless variant of ZooKeeper, a centralized coordination service with a safe and wait-free consensus mechanism. We define synchronization primitives to extend the capabilities of scalable cloud storage and outline a set of requirements for efficient computing with serverless. In FaaSKeeper, the first coordination service built on serverless functions and cloud-native services, we explore the limitations of serverless offerings and propose improvements essential for complex and latency-sensitive applications. We share serverless design lessons based on our experiences of implementing a ZooKeeper model deployable to clouds today. FaaSKeeper maintains the same consistency guarantees and interface as ZooKeeper, with a serverless price model that lowers costs up to 110--719x on infrequent workloads.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers1
Ask how each one uses itBuilds on11
- Faasm: Lightweight Isolation for Efficient Stateful Serverless ComputingSimon Shillaker, Peter R. PietzuchUSENIX ATC 2020 · 382 citations
- Nightcore: efficient and scalable serverless computing for latency-sensitive, interactive microservicesZhipeng Jia, Emmett WitchelASPLOS 2021 · 218 citations
- Firecracker: Lightweight Virtualization for Serverless ApplicationsAlexandru Agache, Marc Brooker, Alexandra Iordache, Anthony Liguori et al.NSDI 2020 · 197 citations
- InfiniCache: Exploiting Ephemeral Serverless Functions to Build a Cost-Effective Memory CacheAo Wang, Jingyuan Zhang, Xiaolong Ma, Ali Anwar et al.FAST 2020 · 118 citations
- Towards Demystifying Serverless Machine Learning TrainingJiawei Jiang, Shaoduo Gan, Yue Liu, Fanlin Wang et al.SIGMOD 2021 · 107 citations
Related papers
- Cloudburst: Stateful Functions-as-a-ServiceVikram Sreekanti, Chenggang Wu, Xiayue Charles Lin, Johann Schleier-Smith et al.VLDB 2020
- Durable functions: semantics for stateful serverlessSebastian Burckhardt, Chris Gillum, David Justo, Konstantinos Kallas et al.OOPSLA 2021 · 63 citations
- Palette Load Balancing: Locality Hints for Serverless FunctionsMania Abdi, Samuel Ginzburg, Xiayue Charles Lin, Jose M. Faleiro et al.EuroSys 2023 · 44 citations
- FaaSGraph: Enabling Scalable, Efficient, and Cost-Effective Graph Processing with Serverless ComputingYushi Liu, Shixuan Sun, Zijun Li, Quan Chen et al.ASPLOS 2024 · 14 citations
- Transactional Causal Consistency for Serverless ComputingChenggang Wu, Vikram Sreekanti, Joseph M. HellersteinSIGMOD 2020 · 34 citations
