论文标题
容忍和交易状态无服务器工作流(扩展版本)
Fault-tolerant and Transactional Stateful Serverless Workflows (extended version)
论文作者
论文摘要
本文介绍了Beldi,Beldi是一个库和运行时系统,用于编写和组成容易且交易的状态无服务器功能。 Beldi在现有的提供商上运行,并让开发人员编写需要容错性和交易语义的复杂状态应用程序,而无需处理诸如负载平衡或维护虚拟机等任务。 Beldi的贡献包括扩展橄榄(OSDI 2016)中基于日志的耐故障方法,并使用新的数据结构,交易协议,功能调用和垃圾收集。它们还包括将最终的框架调整为在联合环境中工作,在该环境中,每个无服务器函数对自己的数据具有主权。我们对Beldi实施了三个应用程序,包括电影审查服务,旅行预订系统和社交媒体网站。我们对1,000个AWS Lambdas的评估表明,Beldi的方法是有效且负担得起的。
This paper introduces Beldi, a library and runtime system for writing and composing fault-tolerant and transactional stateful serverless functions. Beldi runs on existing providers and lets developers write complex stateful applications that require fault tolerance and transactional semantics without the need to deal with tasks such as load balancing or maintaining virtual machines. Beldi's contributions include extending the log-based fault-tolerant approach in Olive (OSDI 2016) with new data structures, transaction protocols, function invocations, and garbage collection. They also include adapting the resulting framework to work over a federated environment where each serverless function has sovereignty over its own data. We implement three applications on Beldi, including a movie review service, a travel reservation system, and a social media site. Our evaluation on 1,000 AWS Lambdas shows that Beldi's approach is effective and affordable.