本文探讨了以太坊虚拟机(EVM)的局限性,并考察了新兴的替代虚拟机,如Arbitrum Stylus、Solana虚拟机(SVM)和基于Move的虚拟机。通过对链上性能的基准分析,比较了基于Rust的智能合约与EVM的性能差异,结果表明Arbitrum Stylus在计算密集型合约中显著降低了gas成本。
直到最近,以太坊虚拟机 (EVM) 还是区块链开发中事实上的标准,它为去中心化网络中的确定性计算建立了基础范式。然而,构建和使用这些网络的社区的需求和期望一直在发展,这导致了新一轮的替代虚拟机的出现,无论是在以太坊生态系统内外。
在本文中,我们将探讨 EVM 的一些局限性,并研究新兴的替代 VM,如 Arbitrum Stylus、Solana 虚拟机 (SVM) 和基于 Move 的虚拟机。
我们还将提供实际链上性能的基准分析,比较基于 Rust 的智能合约与 EVM。
以太坊虚拟机 (EVM) 在很大程度上促进了区块链技术的发展,但它开始表现出一些架构上的局限性,这些局限性根植于其第一代设计选择。
虽然 EVM 为去中心化网络中的确定性计算建立了基础范式,但新一轮的替代虚拟机已经出现,无论是在以太坊生态系统内外。以下是继续影响去中心化应用程序开发和整个区块链生态系统的约束:
EVM 顺序处理交易,这阻止了独立智能合约的并行执行,并限制了吞吐量。虽然这种架构选择确保了确定性的结果,但它导致了显著的可扩展性瓶颈。
EVM 的计算定价模型和指令集架构导致复杂操作的 gas 使用效率低下,尤其是在密码学计算、字符串操作和浮点运算中。
合约字节码 24KB 的限制约束了智能合约的复杂性,通常迫使开发人员将逻辑分解到多个合约中以适应此约束。
EVM 和 Solidity 之间的密切关系在历史上限制了开发人员对编程语言的选择;然而,随着 Vyper 和 Yul 等替代方案的推出,这种情况正在逐渐改变。
EVM 的存储模型需要相对高成本的操作才能读取和写入状态,这会对数据密集型应用程序的成本效益产生负面影响。
为了应对这些限制以及去中心化网络不断变化的需求,Solana 虚拟机 (SVM) 引入了并行事务处理和独特的历史证明机制。同时,基于 Move 的虚拟机(如 Sui 和 Aptos 等平台中实现的虚拟机)引入了面向资源的编程模型,从而增强了资产安全性和可组合性。
更新的创新,例如 Arbitrum Stylus,通过允许开发人员使用 Rust 和 C++ 等语言编写智能合约,进一步突破了界限,这标志着与传统的以 Solidity 为中心的模型的背离。
Arbitrum Stylus 标志着从传统的基于 EVM 的智能合约开发的重大转变,它允许开发人员使用编译为 WASM 的编程语言(如 Rust 和 C++)编写和部署智能合约,同时确保与 EVM 的完全兼容。
此外,Arbitrum Stylus 降低了数百万不熟悉 Solidity 的开发人员的入门门槛。你还可以认为,这项创新提高了链上性能,尤其是在 gas 成本方面。
有关 Stylus 的更多信息,开发人员现在可以在 rollup.codes 上将 multiVM Arbitrum One 网络与其他基于 EVM 的 Rollup 进行比较
为了验证这一点,我们进行了一项基准测试,以比较 Stylus 与 Arbitrum 上标准 EVM 实现的性能。对于此评估,我们使用了 Solidity 中的标准 ERC20 实现,并将其与基于 Rust 的等效实现进行了比较。此外,我们还对计算量更大的合约进行了基准测试,特别是 Ed25519 签名验证。以下是调查结果。
我们使用了 OpenZeppelin 库中的 Solidity 中的标准 ERC20 合约,并使用 Offchain Labs 开发的 ERC20 的 Rust 实现进行了比较测试。结果摘要表明,Solidity 版本在 gas 成本方面明显优于 Stylus 版本,同时在部署、铸造和转移方面也需要更多 gas。

Stylus 在纯计算合约(如 Ed25519)方面表现出色。事实上,Rust 中的签名验证比 Solidity 中的签名验证消耗的 gas 减少 75%。

要更深入地了解我们的基准测试结果,请查看 GitHub 上的存储库。
总而言之,我们的基准测试表明,Arbitrum Stylus 显著降低了计算量更大的智能合约的 gas 成本。再加上 Arbitrum Layer 2 上已经很低的 gas 费用,这为去中心化应用程序的开发人员带来了令人兴奋的新机会。此外,Arbitrum Stylus 首次将 multi-VM 功能引入以太坊。
然而,放眼以太坊生态系统之外,探索 EVM 的替代方案并不是一个新概念。
替代 Layer 1 网络的出现带来了区块链执行环境的创新方法,每种方法都提供独特的架构优势。Solana 虚拟机 (SVM) 凭借其并行事务处理模型率先提出了一种完全不同的方法,允许多个事务同时执行,而无需争用相同的资源。与 EVM 的顺序执行模型相比,这种并行化与 Solana 的历史证明机制相结合,可以实现更高的理论吞吐量。
同时,最初由 Facebook 为 Libra/Diem 区块链开发的 Move 编程语言,已经通过 Aptos 和 Sui 等平台催生了自己的虚拟机生态系统。基于 Move 的 VM 通过将数字资产视为一流资源而脱颖而出,从而提供了增强的安全措施,与传统的基于 EVM 的智能合约相比,这使得意外复制或丢失资产更具挑战性。此外,这些平台实现了并行执行模型,尽管通过与 Solana 不同的技术方法,Sui 特别强调通过以对象为中心的数据模型实现横向可扩展性。
以太坊之外的创新自然也促进了生态系统内的进步。作为拥有最大流动性的基于智能合约的网络,以太坊开发人员专注于提高网络的性能,尤其是其 Layer 2 解决方案。
我们开始看到 Solana 虚拟机作为以太坊上的 Layer 2 网络的混合实现,其中值得注意的例子包括 Eclipse 和 Rome 协议。此外,Neon Labs 开发了可以最好地描述为基于 EVM 的 Solana 侧链的东西。
此外,Move 编程语言有望对以太坊生态系统产生重大影响,Movement 就是一个例子,Movement 是一个即将推出的 Layer 2 网络,它将具有一个名为 MoveVM 的基于 Move 的虚拟机。
另一个开发替代 VM 的 Layer 2 解决方案是 Fuel,它在 FuelVM 上运行并采用 Sway 编程语言(基于 Rust)。在 FuelVM 中,完整节点可以识别事务涉及的帐户,并在执行之前绘制依赖关系图,从而提高计算性能。
重要的是要注意,虽然这些方法既新颖又令人兴奋,但这些网络中的大多数要么仍处于测试网阶段(尚未上线),要么相对较新,这表明它们尚未经过彻底的实战测试。
展望未来,区块链技术的未来确实充满希望,开发人员和用户的许多障碍即将被消除。在 LimeChain,我们很高兴能够帮助具有前瞻性的组织和企业家实现区块链的潜力,并通过尖端的基础设施和开发者工具赋能各个生态系统的开发者。如果你也受到在 web3 空间中创新和创造的需求的驱动,请联系我们并讨论想法:hi@limechain.tech
- 原文链接: limechain.tech/blog/alte...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!