Although historically the term serverless was also used in the context of peer-to-peer systems, it is more frequently associated with the architectural style for developing cloud-native applications. From the developer's perspective, serverless architectures allow reducing management efforts since applications are composed using provider-managed components, e.g., Database-as-a-Service (DBaaS) and Function-as-a-Service (FaaS) offerings. Blockchains are distributed systems designed to enable collaborative scenarios involving multiple untrusted parties. It seems that the decentralized peer-to-peer nature of blockchains makes it interesting to consider them in serverless architectures, since resource allocation and management tasks are not required to be performed by users. Moreover, considering their useful properties of ensuring transaction's immutability and facilitating accountable interactions, blockchains might enhance the overall guarantees and capabilities of serverless architectures. Therefore, in this work, we analyze how the blockchain technology and smart contracts fit into the serverless picture and derive a set of scenarios in which they act as different component types in serverless architectures. Furthermore, we formulate the implementation requirements that have to be fulfilled to successfully use blockchains and smart contracts in these scenarios. Finally, we investigate which existing technologies enable these scenarios, and analyze their readiness and suitability to fulfill the formulated requirements.
翻译:虽然从历史上看,无服务器一词也用于同侪系统,但它更经常地与开发云端应用的建筑风格相联系。从开发者的角度来看,无服务器结构允许减少管理努力,因为应用程序由供应商管理的组件组成,如数据库服务(DbaaS)和功能服务(FaaS)提供。链条的分布系统旨在促成多个不受信任方参与的协作情景。由于块链的分散式同侪性质使得在无服务器结构中考虑它们很有意义,因为资源分配和管理任务不需要由用户来完成。此外,考虑到其确保交易不易运作和促进问责互动的有用性质,路障可能加强无服务器结构的总体保障和能力。因此,我们在此工作中分析阻链技术和智能合同如何适合服务器无信任方的图像,并得出一套它们作为不同组件类型在服务器结构中发挥作用的情景。此外,我们通过制定智能化的落实要求,从而在服务器无服务器结构中成功落实这些要求。