Patterns for Serverless Functions (Function-as-a-Service): A Multivocal Literature Review

Patterns for Serverless Functions (Function-as-a-Service): A Multivocal Literature Review
复制标题

无服务器函数的模式(函数即服务):多语言文献综述

DOI:
10.5220/0009578501810192
复制
发表时间:
2020
期刊:
The VLDB Journal
影响因子:
--
通讯作者:
Jan Raphael Schmid Niederkofler
Jan Raphael Schmid Niederkofler
中科院分区:
--
文献类型:
--
作者:
D. Taibi;Nabil El Ioini;C. Pahl;Jan Raphael Schmid Niederkofler

文献摘要

被引文献

相似文献

无服务器是一项最新的技术,它使公司能够减少配置、扩展和一般管理基础设施的开销。越来越多的公司通过将现有应用程序迁移到这种新模式来采用无服务器。不同的实践者提出了组合和管理无服务器功能的模式。然而,其中一些模式提供了不同的解决方案来解决同一问题,这使得很难为每个问题选择最合适的解决方案。[目标]在这项工作中,我们的目标是通过对不同模式进行分类并报告可能的贝内和问题,帮助从业者了解不同的模式。[方法]我们采用了多域文献综述过程,调查同行评议和灰色文献,并对模式(解决常见问题的常见解决方案)进行分类,以及贝内和问题。[结果]在24个入选作品中,我们识别艾德32种模式,我们将其分类为编排,聚合,事件管理,可用性,通信和授权。[结论]从业者提出了一系列相当一致的模式,即使少数模式对类似问题提出了不同的解决方案。一些模式的出现是为了规避一些无服务器的限制,而另一些则是为了解决一些经典的技术问题(例如发布者/订阅者)。
: [Context] Serverless is a recent technology that enables companies to reduce the overhead for provisioning, scaling and in general managing the infrastructure. Companies are increasingly adopting Serverless, by migrating existing applications to this new paradigm. Different practitioners proposed patterns for composing and managing serverless functions. However, some of these patterns offer different solutions to solve the same problem, which makes it hard to select the most suitable solution for each problem. [Goal] In this work, we aim at supporting practitioners in understanding the different patterns, by classifying them and reporting possible benefits and issues. [Method] We adopted a multivocal literature review process, surveying peer-reviewed and grey literature and classifying patterns (common solutions to solve common problems), together with benefits and issues. [Results] Among 24 selected works, we identified 32 patterns that we classified as orchestration, aggregation, event-management, availability, communication, and authorization. [Conclusion] Practitioners proposed a list of fairly consistent patterns, even if a small number of patterns proposed different solutions to similar problems. Some patterns emerged to circumvent some serverless limitations, while others for some classical technical problems (e.g. publisher/subscriber).