[论文解读] On the Serverless Nature of Blockchains and Smart Contracts
本文研究了区块链和智能合约如何作为无服务器架构中的原生组件发挥作用,识别出四个关键角色:事件触发器、无服务器函数的替代品、编排使能器以及多云集成促进者。研究发现,尽管主要云服务提供商在区块链集成方面提供了不同程度的支持,Azure 提供了最成熟的集成方案,同时指出了在使用便捷性与区块链访问机制的信任度之间存在关键权衡。
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.
研究动机与目标
- 分析区块链技术与智能合约如何与无服务器计算的原则相契合。
- 识别并分类区块链与智能合约在无服务器系统中可扮演的特定架构角色。
- 定义将区块链与智能合约集成到无服务器工作流中的实现需求。
- 评估现有基于云的区块链与无服务器服务在这些场景下的成熟度与适用性。
- 指导开发人员根据信任度、可管理性及功能需求选择合适的技术。
提出的方法
- 作者分析现有的无服务器与区块链模式,识别出四个主要角色:以区块链事件作为触发器、以智能合约作为无服务器函数的替代品、在函数编排中使用区块链,以及在多云环境中作为集成层的区块链。
- 评估主要公共云服务提供商(AWS、Azure、Oracle、Alibaba)的区块链即服务(BaaS)产品在支持无服务器集成方面的表现。
- 评估各提供商生态系统中对原生区块链集成的支持程度,重点关注API访问、事件处理以及区块链交互中的信任保障。
- 通过对比分析,确定云平台在‘区块链感知能力’方面的程度,将其视为一个连续谱而非二元特性。
- 识别出在管理简便性与信任度之间的架构权衡,尤其是在云平台向无服务器组件暴露区块链访问方式时。
- 通过回顾现有文献与工业解决方案验证其发现,重点关注实际部署的可行性。
实验结果
研究问题
- RQ1区块链与智能合约在无服务器架构中以何种方式可作为组件发挥作用?
- RQ2安全高效地将区块链集成到无服务器工作流中的关键实现需求是什么?
- RQ3现有云服务提供商在支持区块链与无服务器组件集成方面表现如何?其成熟度与信任模型有何差异?
- RQ4在向无服务器应用暴露区块链网络时,管理便捷性与信任度之间存在哪些权衡?
- RQ5在生产级无服务器系统中,区块链在哪些架构角色中可切实履行职责——事件触发、函数替代、编排,还是集成?
主要发现
- 区块链与智能合约可作为事件源触发无服务器函数,从而实现具备强一致性保障的无服务器事件驱动架构。
- 智能合约可作为可靠、无需信任的无服务器函数替代品,尤其适用于需要不可篡改性与可验证执行的场景。
- 区块链可通过作为共享的、不可篡改的协调层,促进跨多个无服务器平台的函数编排,尤其适用于多云或跨组织场景。
- Azure Blockchain Service、Oracle Blockchain Platform 和 Alibaba Cloud BaaS 在将区块链集成到无服务器工作流方面提供了最成熟的支特,其中 Azure 提供了最广泛的原生集成能力。
- 在通过托管云服务管理区块链访问的便捷性与所保证的信任程度之间存在显著权衡,因为直接访问机制可能损害安全性。
- 云平台中区块链感知能力的程度并非二元的,而存在于一个连续谱上,直接影响高级无服务器集成场景的可行性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。