作为下一代高度可扩展的区块链,Solana获得了极大的关注。这主要是由于其卓越的性能,每秒可以处理成千上万的交易,而且几乎可以忽略不计的 gas 费用。Solana 先进技术的关键因素之一是其执行环境 SVM,其中包括 Sealevel 并行化引擎。

本文介绍了 Solana 虚拟机 (SVM),以及这种创新的基础设施如何使 Solana 区块链能够提供比以太坊等传统 EVM 区块链更高的性能。虽然 EVM 长期以来一直是加密领域的主导虚拟机标准,但我们还将探索 SVM 如何通过 Nitro 和 Eclipse 等汇总解决方案逐渐扩展。

Solana 虚拟机 (SVM) 和 Sealevel

Solana 虚拟机,简称 SVM,是在 Solana 网络上处理交易和智能合约/程序的执行环境。为了更好地理解 SVM,我们首先需要了解虚拟机如何在加密网络中工作。

在区块链的背景下,虚拟机(VM)是一个运行程序的软件,更常被称为运行时环境,用于执行加密货币网络的智能合约。当一个交易被提交时,网络的虚拟机负责处理它,并管理受此交易执行影响的区块链状态(整个网络的当前状态)。改变网络状态的具体规则是由虚拟机定义的。

在处理交易时,VM 将智能合约代码转换为验证器硬件可以执行的格式。在 Solana 上,编写智能合约的主要语言是 Rust、C 和 C++,它们通过 Solana 虚拟机(SVM)编译成 BPF 字节码,使交易能够被网络节点(验证器)高效执行。

Solana 网络的节点,称为validators,每个节点都运行自己的 Solana 虚拟机 (SVM) 隔离环境,以维持整个区块链的共识。部署智能合约(修改网络状态)时,它会将所需的状态更改传达给运行时。然后,Solana 运行时将这些状态更改转发到在每个验证器系统中运行的 SVM 实例,所有验证器节点都会收到一个副本并对其进行翻译,从而更新区块链。SVM 实例在验证器之间的这种分布导致分散的网络,降低了 DDoS 攻击或关闭的风险。此外,这种隔离可确保智能合约中的潜在错误或漏洞不会损害整个 Solana 网络的安全性或稳定性。

总之,这些 SVM 实例可以被视为“微型计算机”,它们根据交易提供的指令执行必要的操作来更新 Solana 网络的状态。虽然当今许多区块链都依赖于以太坊虚拟机 (EVM),但 Solana 开发了自己的虚拟机,具有可提供改进性能的独特功能。

SVM 的关键组件是Sealevel 。该引擎允许多个智能合约在不影响彼此性能的情况下同时运行,从而在 Solana 执行环境中实现“水平”扩展,这一概念称为并行处理。这是可能的,因为 Solana 智能合约描述了在运行时执行时将读取或写入哪些数据(状态)。这使得没有冲突的事务可以同时运行,以及那些只读取相同信息的事务。因此,Sealevel 使 SVM 可以同时处理数万笔交易,而不是像以太坊虚拟机 (EVM) 那样一个接一个地处理它们。

SVM 与 EVM(以太坊虚拟机

虽然 EVM 和 SVM 执行类似的功能,但 Solana VM 更高效、更快。在 EVM 上,当智能合约从用户余额中转出一美元时,此交易将存储在特定合约的存储中。如果以太坊虚拟机试图并行处理多个交易,这种设计会产生潜在的问题。例如,两个不同的智能合约可能同时尝试花费用户的余额,或者另一个合约可能在更新过程中读取同一用户的余额,从而导致不一致和冲突。

相比之下,Solana 账户模型将用户余额等数据分开,以便更好地组织和提高效率。Solana 上的事务还需要在 SVM 中执行之前明确指定它们将读取和修改的数据。如前所述,这允许不与相同数据交互的程序并发运行,这有助于缓解拥塞并降低高额费用。例如,Solana VM 可以同时处理 Toly 向 Raj 发送 1 美元和 Armani 向 Chase 发送 3 美元。

EVM 难以同时处理多个交易的部分原因是它是一个“单线程”运行时环境,一次只能处理一个合约。因此,EVM 设计没有利用多核硬件,这意味着验证器硬件中只有一个核心在主动处理交易,而其他核心仍未得到充分利用。这通常会导致网络拥塞和更高的交易费用。然而,需要注意的是,除了没有多线程运行时外,其他因素也会导致 EVM 限制,例如希望对运行节点保持低硬件要求。

另一方面,Sealevel 通过有效利用可用硬件资源来优化 Solana 运行时的性能。SVM 是一个多线程运行时环境,旨在通过使用验证器机器的所有可用内核来并行处理多个事务。随着验证器硬件的不断改进,这使得 Solana 能够更有效地扩展。得益于其架构,Solana 虚拟机还可以更好地管理交易费用。这导致了本地化费用市场的发展,使得费用可以根据智能合约进行分配。相比之下,EVM 链依赖于全球费用市场,这意味着 NFT 铸币厂可以影响掉期或 DeFi 交易,即使这些交易是不相关的。

综上所述,SVM 的并行处理能力使 Solana 能够实现更高的 TPS,从而带来更快的交易速度,并且与 EVM 架构相比,费用几乎是可以忽略的。 SVM 定位为下一代区块链环境,效率更高,性能更高。随着越来越多的开发人员认识到这一点,我们开始看到越来越多的人采用 SVM 作为智能合约的执行环境,一个新兴的 SVM 汇总生态系统正在形成。

SVM Rollups 的新兴生态系统

汇总是一种区块链扩展解决方案,它处理第 1 层区块链(例如,Solana)之外的交易,然后将数据追溯发布到第 1 层。Rollups 旨在通过将多个交易捆绑在一起形成一个“证明”,然后提交给主链来减少网络拥塞和交易费用。构建 rollup 的最大优势是能够完全自定义链。这种定制允许各种用例,例如定制的订单簿、用于最小化 MEV(矿工可提取价值)的加密内存池,或旨在满足特定要求的许可应用程序。

虚拟机还可用于简化使用同一 VM 的其他链上的开发人员的部署过程。这种网络效应使以太坊及其 VM 受益匪浅,因为它是加密智能合约的第一个运行时环境。因此,EVM 一直是用于构建汇总区块链的主要执行环境。在 Optimistic 和 Zk 两种类型的 rollups 中,Optimistic rollups例如 Arbitrum 是最普遍的。最近,SVM 取得了许多进步,旨在将汇总技术带给 Solana 开发人员。为 Solana 构建汇总的主要项目是Nitro和Eclipse。

Nitro 是一种 Optimistic rollup 解决方案,类似于 Arbitrum 或 Optimism,它利用 Solana 虚拟机 (SVM) 使 Solana 开发人员能够将他们的 dApp 移植到各种生态系统。Nitro 计划首先在 Sei 上推出,这是一个基于 Cosmos 的特定行业交易链,然后再扩展到其他链。它使用 SVM 并行执行交易,这意味着用户将能够像在 Solana 上一样执行,而 Nitro 使用 Sei 进行结算和共识。此外,随着 Sei 成为 Cosmos 生态系统的一部分,Nitro 的项目及其用户将能够受益于 IBC 互操作性技术,访问 Cosmos 资产和流动性。

另一个正在开发的 SVM 汇总解决方案是 Eclipse,它旨在促进可定制汇总的部署。Eclipse 的 optimistic rollups 使项目能够创建自己独特的应用程序链,同时受益于已建立网络(例如 Cosmos 应用程序链、Polygon、Ethereum)的安全性并利用 Solana 虚拟机 (SVM)。SVM 充当执行环境,Eclipse 处理结算,共识和数据可用性 (DA) 由开发人员选择的第 1 层网络管理。目前,Eclipse 提供了 Optimistic rollup 解决方案,但也在致力于启动 zk-rollups。

Eclipse 已经发布了两个构建在 SVM 之上的汇总解决方案:

  • Polygon SVM:通过这个汇总,任何基于 Solana 构建的项目都可以轻松部署到 Polygon 网络上;

  • Cascade:由 Injective 和 Eclipse 引入,Cascade 是针对 IBC 生态系统优化的 SVM rollup。它将允许 Solana 项目毫不费力地部署到 Cascade 并访问 Cosmos 应用链的资产和流动性。此外,Injective 上的项目现在可以利用 Cascade 的并行化 SVM。

所有这些解决方案都简化了 Solana VM 的使用,并扩大了其覆盖范围。来自其他链的用户也将能够无障碍地 "品尝 "Solana 的并行化体验,这可能会导致更多的人认识到SVM的优势,从而使更多的项目将他们的 dApps 转移到 Solana,从其架构中受益,并加入更多的用户。

SVM 是开发人员的下一代区块链环境

尽管只有三年的历史,Solana 已经展示了令人印象深刻的性能,并且在其 VM 之上开发扩展解决方案(如 Nitro 和 Eclipse),凸显了其创新执行架构的成功。Solana 已经能够从比特币和以太坊等旧网络所面临的挑战中吸取教训。比特币不是为智能合约设计的,这导致了以太坊的出现。同样,以太坊也没有为大规模采用和高速交易做好准备,为 Solana 和并行处理铺平了道路。此外,对于开发人员来说,访问 SVM 环境变得越来越容易,Neon Labs 引入了与 Solana 运行时的 Solidity 兼容性,以及即将到来的Runtime v2 升级,这应该使开发人员能够使用多种编程语言(例如 Move)构建与 SVM 兼容的 dApp。

很明显,Solana VM 为构建下一代应用程序提供了更高级的环境。交易的并行处理可实现更高的吞吐量。类似于传统金融中的可能性,使开发人员能够构建任何类型的产品,而无需担心速度限制或费用。在 TPS 15 的链上构建不会使加密技术得到大规模采用。多亏了 SVM 和 Sealevel,Solana(已经)可以处理数以千计的交易而不会出现拥堵,也不会产生明显的 gas 费用,使其成为构建这些新应用程序的完美环境。随着验证器硬件的改进,Solana 的 Sealevel 运行时将能够并行处理更多交易,扩大 SVM 和 EVM 之间的差距,同时吸引更多用户。

Squads 将支持 Solana 虚拟机 (SVM) 的扩展,并将多重签名 (multisig) 功能引入整个 SVM 生态系统,使任何人都可以使用最佳的区块链执行环境和最佳的自我托管体验来管理链上资产.