|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Solana 虚拟机 (SVM)
什么是 Solana 虚拟机 (SVM)?
Solana 虚拟机 (SVM) 是支持 Solana 每秒处理数千个事务的系统。
简单来说,SVM就是Solana的执行环境。它是运行和处理网络上发生的所有交易和智能合约的软件。您可以将其视为分布在 Solana 上验证交易的所有节点上的去中心化计算机处理能力。
SVM 通过执行所需的代码并相应地修改 Solana 的状态来帮助在 Solana 上启动事务。
Solana 虚拟机 (SVM) 如何工作?
SVM 不是一个集中式系统 - 它作为跨节点的独立实例(称为验证器)运行,验证 Solana 上的交易。每个验证器在本地运行自己独立的 SVM 版本。
这种分布式安排对于安全性和可扩展性至关重要。这意味着如果智能合约中存在错误,它不会导致整个网络崩溃。它使 Solana 能够将工作负载分散到多个并行处理器上,而不是局限于一台集中式服务器。
这些 SVM 实例通过将代码翻译成验证器硬件可以理解的指令来执行交易和智能合约。
虽然技术含量很高,但关键要点是 SVM 允许 Solana 在多个节点上以分布式方式运行复杂的程序。
什么是 Sealevel 以及它如何在 SVM 中启用并行处理?
现在事情变得非常有趣了! SVM 的秘密武器称为 Sealevel。从来没有听说过?让我们来了解一下。
Sealevel 就像交易处理的涡轮增压器。它使SVM能够同时并行执行多个事务。
大多数网络一次只能处理一笔交易,但 Sealevel 破解了并行处理的代码。它标识哪些事务可以同时运行而不会发生冲突。
这意味着如果两个事务没有访问相同的数据,Sealevel 可以在验证器的多核处理器上同时处理它们。
智能合约如何在Solana虚拟机上部署和执行?
好吧,技术术语已经够多了。让我们实际一点吧。假设您刚刚开发了一个令人惊叹的 Solana 智能合约。它实际上是如何在SVM上运行的?
当您部署该智能合约时,它会将代码发布到网络上的所有验证器。每个人都会收到一份副本。
然后合同开始执行。每当需要更改 Solana 的状态(例如传输令牌)时,它都会将这些指令传达给 Solana 运行时。
运行时将这些请求传递给所有单独的 SVM,然后解释并执行指令以实际更新 Solana 的状态。
SVM 和 EVM(以太坊虚拟机)有什么区别?
现在你可能会想——这个虚拟机概念是不是类似于以太坊的 EVM?敏锐的观察力! SVM 和 EVM 具有类似的用途,但也存在一些关键区别。
主要的一个?并行处理能力。 EVM 采用顺序设计,一次只能处理一笔交易。但如前所述,SVM 利用 Sealevel 来实现同时执行。
这意味着 Solana 可以提供更高的交易量而不会出现拥堵。我们谈论的是每秒数千笔交易!
是什么导致 EVM 区块链拥堵和高额费用?
这种单线程限制是 EVM 链上拥塞和高额费用的一个重要因素。
当交易量激增时,EVM 无法扩展。所有事情都必须由该单个核心按顺序处理。积压的订单不断增加,用户猛烈抬高 Gas 费,试图插队。
然而,SVM 及其并行架构可以利用更多内核来有效管理流量峰值。额外的吞吐量可以防止拥塞并保持较低的费用。
SVM 的本地化费用市场与 EVM 的全球费用市场
好吧,最后一个技术比较——交易费用。
EVM 在整个网络中采用一个全球费用市场。由于只有一条通道,一个 dApp 中的活动可能会堵塞另一个不相关的 dApp。
但 SVM 支持每笔交易的本地化费用。因此,NFT 交易不会影响 DeFi 互换的价格。
这可以保持网络访问公平和流量顺畅。另外,如果需要,dApp 可以为其用户提供费用补贴。
哪些新兴 SVM Rollup 解决方案正在扩大 SVM 的应用范围?
让我们换个话题来讨论 SVM 的采用。
最近,开发人员开始使用 SVM 构建汇总解决方案。 Rollup 在像以太坊这样的第 1 层上进行结算之前,会先将链下交易捆绑起来。这些允许开发人员在其他链上部署 SVM 合约,同时保持 Solana 级别的速度。