Solana 节点 — Solana RPC、验证器和 RPC 提供程序入门

介绍

区块链是一组相互通信以就新信息达成一致的节点。区块链与传统系统的不同之处在于节点不需要相互信任。因此,不存在单点故障,并且系统能够抵御任意故障。

这是所有区块链的核心思想,但每个链都有自己的实现风格。在这篇简短的文章中,我们将详细了解 Solana 如何实现这一点。我们将了解什么是节点、RPC 和验证器节点之间的差异,以及如何考虑节点提供者。

什么是节点?

节点就是一台计算机。 Solana 节点是运行 Solana 区块链客户端的计算机。并非所有节点都是相同的,某些节点专门从事某些功能,例如投票或流数据。所有节点之间的核心定义相似性是它们跟踪区块链的状态。也就是说;他们看到每个状态转换(例如,账户 X 向账户 Y 发送了 5 SOL)。

验证节点

验证器是一个 Solana 节点,它通过 i) 生成区块和 ii) 对其他区块的有效性进行投票来帮助保护网络。回想一下,所有 Solana 节点都会跟踪区块链的状态。因此,如果验证者产生了错误的区块,其他验证者将检测到它并进行相应的投票。

一个自然的问题是:“他们为什么这样做?他们不说谎的动机是什么?”在不深入博弈论的情况下,验证者会出于多种原因(主要是经济机会)而被激励诚实投票。验证者从交易费用、最大可提取价值(MEV)和代币通胀中获得奖励。要了解有关验证器经济学的更多信息,请参阅此入门读物

RPC 节点

一旦区块链正常运行,它就会开始处理和存储新信息。就 Solana 而言,它开始非常快速地处理和存储新信息。开发人员需要访问存储在区块链中的信息以在其系统中使用。然而,不同的应用有不同的要求。用例可以像传输单个代币一样简单,也可以像以非常低的延迟执行原子套利交易一样复杂,与其他高频交易者竞争。

您可能会注意到这里的一个问题 - 我们现在需要一个能够处理极其多样化的信息请求的节点,同时仍然对区块的有效性进行投票,甚至生成新的区块。虽然这样的节点是可能的,但它们的系统要求非常高,以至于降低了运行节点的可访问性。

Solana 通过引入一种新型节点来解决这个问题,该节点仍然跟踪区块链上的所有信息,但不会对其进行投票或生成区块。换句话说,这种节点类型——RPC节点——只响应数据请求,不参与共识。要查看 Solana 节点可用的 API 请求的完整列表,请参阅此处的官方规范

Solana 节点要求

与普遍看法相反,您不需要任何 SOL(Solana 区块链的原生货币)来运行 Solana 节点。仅当您想参与共识时才需要这样做,因为发送投票需要少量交易费用。

具体的系统要求将取决于节点的使用(并且可以针对自定义情况进行相当多的调整),但这里有一些粗略的起始指南:

  • 12 核 CPU,最低主频为 2.8GHz
  • 128/256GB RAM(RPC 节点可能需要更多用于自定义数据库索引)
  • 2-4 个至少 1TB 的 NVME 驱动器
  • 10 Gbps 网络

请注意,正在进行多个验证器软件重写,旨在从较少的硬件中获得更高的性能,Firedancer是其中最突出的一个。

Solana RPC 提供商

网络的安全性和可访问性是由节点本身决定的。因此,运行 Solana 节点是一项严肃的工作和责任。如果你的节点基础设施不可靠,你将受到经济惩罚。对于 RPC 节点,您的应用程序、系统和用户也会受到影响。后果可能很严重——从不正确的数据(可能会影响税务和财务数据)到您的应用程序无法使用。

因此,出现了几家专门致力于改进这一流程的公司。 RPC 提供商在构建这些系统时考虑到了可靠性、性能和可扩展性,这样开发人员除了构建出色的产品之外无需担心任何事情。

如何在 RPC 提供商之间进行选择?

应该从多个维度来评判 RPC 提供商:

领域专业知识

  • 您的 RPC 提供商对他们提供基础设施的链了解多少?他们是否深入了解系统架构、跟上所有更新并参与治理进程?或者由于支持具有不同要求的多个链而导致它们分散?重要的是,您的 RPC 提供商始终是您值得信赖的信息源,以确保正确处理链拥塞、中断和安全事件等非线性事件。

可靠性

  • 大多数 RPC 在安静时段工作,但它们在流量大的情况下还能正常工作吗?他们多久发生一次事件?这些事件是如何传达给您的?在生产中进行压力测试之前,您不会了解后果。一般来说,选择拥有良好记录的团队是更明智的选择。

可扩展性

  • RPC 能否应对突发流量?如果随着您的业务变得更加成功,您的使用量每月都会增加怎么办?您的延迟会变得更糟吗?您的 RPC 提供商是否正在帮助您优化调用以构建可扩展的系统?他们是否积极主动地采取行动?

正确性

  • 您如何保证返回给您的 RPC 数据是正确的?节点基础设施是否始终与链同步,或者是否返回过时的数据?对于多链节点提供商来说,这是一个非常常见的问题,因为他们希望在具有不同性能特征的多个链上重用相同的架构。

潜伏

  • 您的 RPC 提供商支持哪些地理区域?例如:您的亚洲用户是否会遇到比美国用户更高的延迟?

支持

  • 区块链还处于早期阶段。每天都有新的问题被发现。您的 RPC 提供商为您提供快速周转时间、领域专业知识和咨询服务非常重要,以便您可以调试系统。

价格

  • 定价有多透明?所有 RPC 方法的成本都一样吗?如果超过每月使用量会发生什么?定价范围是否合理,还是您现在必须协商新合同或与新提供商合作?
  • 附加 API 和功能
  • 您是否需要集成许多其他服务提供商来构建您的应用程序,或者您的 RPC 提供商是否还有许多其他 API 来帮助您在您选择的链上构建?如果您需要数据流、专用基础设施或其他特定领域的 API,该怎么办?

顶级 Solana RPC 提供商

作为加密货币开发人员,选择正确的 RPC 提供商是您最重要的决定。这一决定直接影响您的业务的产品、财务以及最终的成功。

根据上述标准,以下是顶级 Solana RPC 提供商的列表:

  1. Helius — 专门研究 Solana 基础设施。因此,每个系统都是根据 Solana 开发人员及其需求构建的。特别是,Solana 开发节奏快,需要全面的支持、领域专业知识和可靠性。 Helius 支持了 Solana 历史上最重大的事件,包括 Helium 的区块链迁移。
  2. Triton — Solana 验证器/RPC 商店,定期为生态系统提供开源贡献。
  3. Alchemy — 如果您的应用程序本质上是多链的,并且您希望最大限度地减少节点提供商的数量,Alchemy 可以提供强大的多链产品。
  4. Blockdaemon — 如果您想运行验证器而不是 RPC 节点,并且您是企业级客户,那么 Blockdaemon 可能是一个不错的选择。
💡
原文链接:Solana Nodes — A Primer on Solana RPCs, Validators, and RPC providers
本文由SlerfTools翻译,转载请注明出处。

SlerfTools专为Solana设计的工具箱,致力于简化区块链操作,提供无编程全可视化界面,使发币管理流动性无代码创建Dapp等复杂过程变得安全简单。