区块链中文技术社区

EVM 与 SVM:客户端差异

了解 Solana 和以太坊上的客户端之间的区别。
以太坊和 Solana 是独特的区块链,具有多个不同的验证器客户端来验证交易。拥有各种验证器客户端有助于防止特定客户端遇到问题时网络中断。在本章中,我们将介绍以太坊和 Solana 生态系统中的验证器客户端,并讨论存在的节点类型。

验证器客户端的类型

随着以太坊从 PoW(工作量证明)过渡到 PoS(权益证明),它采用了两种类型的验证器客户端:执行层 (EL) 和共识层 (CL) 客户端。执行客户端负责接收网络上广播的新交易、在 EVM 上执行它们以及维护所有以太坊数据的当前状态和数据库。另一方面,共识客户端实现 PoS 的共识算法,并根据来自执行客户端的已验证数据在网络上达成共识。这两种类型的客户端扮演着不同的角色,这就是为什么以太坊验证器节点通常同时运行执行客户端和共识客户端的原因。相比之下,Solana 将这两种功能结合在一个客户端中。

以下是以太坊的执行客户端列表:

ClientLanguage
GethGolang
BesuJava
NethermindC# .NET
ErigonGo
RethRust

以下是以太坊共识客户端列表:

ClientLanguage
LighthouseRust
LodestarTypeScript
NimbusNim
PrysmGo
TekuJava

现在,让我们看一下 Solana 的验证者客户端列表:

ClientLanguage
Solana LabsRust
Jito-SolanaRust
FiredancerC++
sigZig
AgaveRust

以太坊和 Solana 的节点数量

对于以太坊,您可以通过访问clientdiversity检查每个验证器客户端运行的节点数量。 对于 Solana,您可以从验证器健康报告中找到此信息。

节点类型

根据使用情况和所需条件,节点有多种形式。它们可以是存储所有数据的重量级节点,也可以是专注于处理交易的轻量级节点。
以太坊根据数据存储范围和参与共识的方式将节点分为三类:

对于 Solana 来说,节点根据其参与共识的方式分为两种类型:

Solana 从一开始就将 RPC 节点与共识节点区分开来。不过,RPC 节点不参与投票。以太坊的 RPC 节点通常基于完整节点或存档节点。

Solana 为什么这样对节点进行分类?与以太坊不同,Solana 每秒生成大量交易,由于交易量巨大,将整个区块链存储在每个节点上是不切实际的。目前,Solana 使用 Google Bigtable 存储数据,RPC 节点从那里访问数据。因此,Solana 不太注重在本地存储大量数据,这与以太坊的节点分类标准不同。

总而言之,比较如下:

节点类型以太坊Solana
存储所有数据并参与共识的节点。归档节点[无]
节点存储一些数据并参与共识。全节点共识节点
节点存储一些数据但不参与共识。轻节点RPC 节点

RPC 服务列表

有同时支持以太坊和 Solana 的 RPC 服务,也有支持单链的 RPC 服务。Alchemy 和 Quicknode 等服务同时支持以太坊和 Solana。您可以在此处查看 Solana 的各种 RPC 服务

概括

与以太坊一样,Solana 也拥有各种类型的验证器客户端。
虽然每个链的节点类型可能看起来不同,但它们从根本上为用户提供相同的功能。

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »