本文概述了 Solana 验证器客户端的关键方面,包括验证器与客户端的基本概念,并重点介绍了可用的不同 Solana 客户端——Agave、Jito-Solana、Sig 和 Firedancer。此外,还深入了解了运行验证器的要素,包括硬件要求和经济考虑,旨在为开发人员、有抱负的验证器以及对 Solana 内部运作方式感兴趣的读者提供有价值的信息。
作为一种区块链,Solana 以其卓越的吞吐量和可扩展性脱颖而出,这得益于其验证者客户端的性能。这些专门的软件实现使节点能够执行诸如区块生产、交易验证和共识等基本任务。
本文提供了 Solana 验证者客户端基本方面的高级概述。我们将探讨验证者与验证者客户端的基本定义,并重点介绍可用的不同 Solana 客户端——Agave、Jito-Solana、Sig 和 Firedancer。最后,我们将深入了解运行验证者需要什么,包括硬件要求和经济考虑因素。
无论你是开发者、有抱负的验证者,还是仅仅对 Solana 的内部运作感到好奇,本指南都提供了关于你需要了解的关于 Solana 验证者客户端的简洁而全面的概述。
首先,重要的是要理解 Solana 生态系统中与验证者和节点相关的一些基本概念和区别。
验证者是 Solana 等区块链上的计算节点的通用术语。验证者在维护网络完整性和安全性方面发挥着至关重要的作用。他们验证交易、提出新区块并确保符合网络规则。他们会执行检查,例如签名验证,以确保交易是合法的并符合网络的协议。
验证者客户端是一种特定的软件实现,使验证者能够连接到 Solana 区块链并执行其所需的职责。验证者客户端允许节点执行必要的操作,例如验证交易和生成区块。虽然不同的客户端都将遵循相同的通用协议,但每个特定客户端的实现方式可能不同。例如,以太坊和 Solana 都有用不同编程语言实现的多个客户端。

与验证者相关的另一个重要区别是验证者节点和远程过程调用 (RPC) 节点之间的区别。虽然验证者和 RPC 节点对于 Solana 都是不可或缺的,但它们服务于不同的目的和功能。
Solana 验证者节点负责提出和验证新区块、参与共识协议以及保护网络。他们根据其性能和正常运行时间获得奖励,从而确保区块链的稳健性和可靠性。验证者使用历史证明 (PoH) 等机制对交易进行时间戳,并使用委托权益证明 (dPoS) 参与共识。
Solana RPC 节点促进了开发者、用户和区块链之间的交互。它们提供 API 来查询区块链数据和提交交易,但不参与共识过程或区块创建。RPC 节点对于 dApp 至关重要,无需验证者角色固有的开销即可访问实时区块链数据。
诸如 Syndica 之类的 RPC 提供商提供了一种弹性节点架构,该架构可以自动扩展 RPC 节点,并且可以在它们之间进行负载平衡请求。此架构专为 Solana RPC 设计。
根据特定的验证者客户端,如果验证者节点的运营商启用它,则该节点还可以提供 RPC 功能。这通常需要付出性能代价,因为节点现在必须在与 Solana 网络的其余部分保持同步的同时为 RPC 请求提供服务。
要了解更多信息,请深入阅读我们关于 了解 Solana RPC 的文章。

现在我们已经确定了关键区别,我们可以回顾一下验证者在 Solana 上下文中的主要功能。这些功能可以大致分为三类:
这些功能都是 Solana 核心协议的一部分,必须由每个 验证者 执行。但是,不同的 验证者客户端 可能会以不同的方式实现这些功能。
Solana 协议的一个重要方面是,验证者轮流单独担任领导者角色。领导者承担着为区块链生产新区块的角色。如果验证者没有担任领导者角色,它会将新收到的交易转发给当前领导者。当验证者成为领导者时,它会聚合来自各种验证者/RPC 客户端的传入交易,执行它们,并将它们组装成一个新区块。领导者利用 Solana 的 历史证明 (PoH) 机制来持续对交易进行时间戳,从而实现可验证且一致的事件顺序。新形成的区块以及更新的账本状态的签名由领导者广播到网络中的其余验证者。
当验证者从领导者那里收到最新区块的交易时,它会重新执行(重放)交易并执行多项检查以保证有效性。这些检查包括验证数字签名以确保交易已由账户持有人授权,检查交易格式是否正确,并确保区块符合 PoH 机制设置的预期顺序和时间。每个验证者都希望计算出完全相同的更新账本状态的最终签名,这使他们有信心投票支持新的交易区块。
Solana 利用委托权益证明 (dPoS) 机制进行网络共识,该机制依赖于验证者根据其质押的 SOL 比例对区块进行投票。在这个系统中,任何 SOL 代币持有者都可以将其代币委托给验证者,从而使该验证者在投票时获得额外的权重并添加新区块作为领导者。质押的 SOL 数量越高,验证者的投票权重和被选为领导者的可能性就越大。验证者参与投票过程以确认和最终确定区块,至少需要三分之二的验证者投赞成票才能确认区块。
验证者通过多种奖励结构在经济上受到激励,我们将在本文的后面部分更详细地介绍这些奖励结构。维护高正常运行时间和最佳性能对于验证者来说至关重要,以最大限度地提高其奖励,因为停机时间和错过的时段会被处以罚款。具有强大性能设置的验证者将吸引更多的 SOL 委托,从而提高其盈利潜力。
为了帮助监控和优化验证者性能,可以使用许多公共 Solana 验证者仪表板。这些工具提供了对关键指标的实时洞察,例如交易确认时间、权益分配、APY 和佣金变化。验证者和质押者可以使用这些仪表板来跟踪业绩、接收诸如违规之类的事件警报,以及比较各种因素下的验证者。
例如,Stakewiz 提供了一个全面的 仪表板,该仪表板使用专有分数对验证者进行排名,该分数考虑了十几个指标,例如投票成功率、跳过率和权益分配。该仪表板还以可视化方式表示权益集中度,通过高亮显示权益较低的验证者来鼓励去中心化。
有关与验证者相关的仪表板和工具的完整列表,请参阅本文末尾的其他资源部分。
目前有两个不同的 Solana 验证者客户端投入生产:Agave 和 Jito-Solana。两个新的验证者客户端正在开发中:Firedancer 和 Sig。在本节中,我们将提供每个客户端的高级概述。
由 Anza 开发(以前是 Solana Labs 的一部分),语言:Rust
主要特性/创新:
客户端 GitHub 存储库:https://github.com/solana-labs/solana & https://github.com/anza-xyz/agave
由 Jito Labs 开发,语言:Rust
主要特性/创新:
由 Syndica 开发,语言:Zig
主要特性/创新:
由 Jump Crypto 开发,语言:C
主要特性/创新:
在 Solana 网络上运行验证者需要技术知识和对所涉及的财务动态的理解。在本节中,我们将介绍运行验证者节点的技术要求和经济性。我们还将介绍验证者必须监控的关键性能指标,以及社区可用的其他工具和资源。
运行 Solana 验证者需要特定的硬件,以确保最佳性能和可靠性。虽然建议使用以下规范,但验证者应进行自己的性能测试。
最低和推荐硬件规范:
重要的是要注意,如果运营商的目标也是提供 RPC,则运行验证者节点的硬件要求会更高。这包括需要更多的线程(因此,可用的内核和 RAM)来为这些请求提供服务。根据预期的 RPC 容量,可能还需要高带宽 NIC(网络接口卡)。
网络和数据带宽:
验证者必须具有稳定且高速的互联网才能管理数据进入和退出,这可能很大,具体取决于网络负载。
软件:
预构建的二进制文件适用于支持 AVX2 的 CPU 上的 Linux x86_64(建议使用 Ubuntu 20.04)。MacOS 或 WSL 用户可以从源代码构建。
如果你正在考虑运行验证者,则有许多免费工具可以简化设置和维护。例如,solv 是一个开源 CLI,可简化 Solana 验证者管理,提供用于设置、性能监控、密钥管理、快照和质押的命令。
有关支持验证者设置和监控的更多工具和资源,请参阅其他资源部分。
在决定是否运行验证者时,应考虑不同的成本和收入来源。我们将在下面介绍每一个。
运行 Solana 验证者的运营成本非常高,这主要是由于所需的高性能硬件和持续的服务器费用。验证者通常租用专用服务器硬件,因为内部管理硬件可能既复杂又昂贵。一个常见的选择是来自 Latitude 和 OVHcloud 等公司的裸机产品。服务器提供商通常会收取额外的数据出口成本,这是一个重要的成本组成部分,因为验证者客户端必须与 Solana 网络通信。根据特定的硬件配置和区域,租用验证者服务器的成本可能超过每月 700 美元。
运行验证者还会产生投票确认区块和参与共识机制的成本。每笔投票交易都会产生费用,通常每次投票 0.000005 SOL(5,000 lamports)。鉴于一个 epoch 跨越大约 2 到 3 天,并且验证者需要对每个区块进行投票,这可能导致每年大约 300-350 SOL 的成本,或大约每天 1 SOL。
总而言之,在服务器租用、数据带宽和投票成本之间,运行验证者的成本每年可能在 40,000 美元到 70,000 美元之间,具体取决于各种因素,例如你的服务器配置和数据使用情况。
权益奖励是 Solana 网络上验证者的主要收入来源,并且每个时期从通货膨胀池中分配一次。单个时期内单个验证者的奖励的基本公式如下:

请注意,权益收益率和权益金额将取决于你是通过将 SOL 委托给验证者(并支付佣金)来间接质押,还是自己运营验证者并直接质押 SOL(并可能对额外的委托资金收取佣金)。
接收权益委托可能是验证者经济模型的重要组成部分。验证者可以吸引质押者,他们会将他们的 SOL 委托给验证者的节点,从而增加验证者的权益权重和被选为领导者的机会。然后,验证者根据其佣金率赚取由其委托权益产生的奖励的一部分。该过程包括设置投票帐户并确保 SOL 储备。为了参与质押,验证者必须确保其基础设施满足必要的性能标准,以提供可靠的服务并证明委托人的信任。
在上面的权益奖励公式中,总权益金额将包括验证者的自质押 SOL 加上从委托资金中赚取的佣金。验证者的总收益率可以计算如下:

从上面的公式中,我们可以看到收益率取决于以下因素:

Solana 验证者还可以从交易费用和最大可提取价值 (MEV) 中获得收入。Solana 上的交易费用包括基本费用(0.000005 SOL)和可选的优先级费用,用于优先处理区块内的交易。
MEV 表示从包含、排除或重新排序区块内的交易中获得的利润。利用特定客户端(如 Jito-Solana)的验证者可以获得额外的 MEV 奖励。
结合质押奖励、交易费用和 MEV,平均验证者每月赚取大约 1.5 SOL;但是,这个数字将完全取决于验证者的总质押金额。
验证者利润计算器有助于通过考虑上面讨论的所有不同变量来估计潜在收益。例如,Cogent 验证者利润计算器 使用实时区块链数据来帮助验证者做出关于收益的明智决策。有关可用计算器的完整列表,请参阅其他资源部分。
适当的监控对于维护高性能 Solana 验证者至关重要。验证者应使用 Prometheus、Grafana 和其他工具来跟踪实时指标。以下是最重要的关键性能指标的摘要。
Solana Labs 官方的关于运行验证者的文档提供了关于设置、维护和优化 Solana 验证者和 RPC 节点的全面指南,以及高效运行的最佳实践和先决条件。
Solana 基金会的新委托计划通过测试网参与、激励付款和投票成本覆盖,支持节点运营商最大限度地提高去中心化、可靠性和性能。满足性能标准的节点运营商可以从基金会获得匹配的权益,并逐步建立独立性,该计划旨在帮助新的验证者建立自己并增加其权益,同时为网络的去中心化做出贡献。
智能验证者工具包 (SVT) 通过分析、警报和链上消息传递来简化 Solana 验证者的设置、监控和控制,提供从基本监控到完整节点控制的不同级别的管理。
“solv”CLI 工具通过提供用于设置节点、监控性能、管理密钥、处理快照和质押的命令来简化 Solana 验证者管理。
Solana 验证者管理器使用 Ansible 脚本自动执行引导和维护 Solana 验证者节点的过程,这些脚本遵循一致、可靠的节点管理的最佳实践。
本 AWS 指南展示了如何在 AWS 上部署 Solana 共识和 RPC 节点,涵盖了节点类型、推荐的 EC2 配置以及单节点和高可用性部署的设置选项。
Solana 导出器是 Solana 验证者节点的模块化监控解决方案,以 Rust 语言实现。它包括 Prometheus 导出器、用于轻松部署的 Docker 容器和示例 Grafana 仪表板。该工具通过 Prometheus、Grafana 和警报的设置说明,帮助你监控验证者性能、管理权益池和跟踪集群运行状况。
Solana 验证者监控工具可以使用 Telegraf 轻松设置 Solana 验证者的性能监控,以收集指标并将其发送到仪表板,从而帮助运营商以最小的资源影响来跟踪验证者和服务器性能。
这些计算器允许 Solana 验证者通过调整服务器成本、佣金率、委托权益、Solana 价格和运营成本来估算其收益。它们可以使用实时区块链和市场数据来帮助构建更详细的潜在利润预测,包括毛利润、验证者费用和复利回报的影响。
- 原文链接: blog.syndica.io/a-solana...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!