本文介绍了Solana区块链中的节点类型,包括RPC节点和验证器节点,以及如何选择RPC提供商。文章详细解释了节点的功能、系统要求,并提供了选择RPC提供商的多维度评估标准。
7 分钟阅读
2024年1月13日
区块链是一组相互通信以达成一致信息的节点。区块链与传统系统不同之处在于,节点之间不需要相互信任。因此,系统中不存在单点故障,并且系统在面对任意故障时具备弹性。
这是所有区块链的核心思想,但每条链都有其独特的实现方式。在这篇简短的文章中,我们将更多地了解 Solana 是如何实现这一点的。我们将了解什么是节点、RPC 节点和验证节点之间的区别,以及如何看待节点提供商。
节点简单来说就是一台计算机。一个 Solana 节点是运行 Solana 区块链客户端的计算机。并非所有节点都是相同的,有些节点专门用于某些功能,如投票或流式传输数据。所有节点之间的核心相似之处在于它们都跟踪区块链的状态。也就是说,它们看到每一个状态转换(例如,账户 X 向账户 Y 发送了 5 SOL)。
验证节点 是一种帮助保护 Solana 网络的节点,其通过 i) 生成区块和 ii) 对其他区块的有效性进行投票来实现。回忆一下,所有 Solana 节点都会跟踪区块链的状态。因此,如果验证节点生成了一个有问题的区块,其他验证节点将会检测到并相应地进行投票。
一个自然的问题是:“为什么要这么做?他们不说谎的动机是什么?”
在不深入博弈论的情况下,验证节点有多个理由被激励诚实地投票,主要是经济机会。验证节点从交易费用、最大可提取价值(MEV)和代币通胀中获得奖励。要了解更多关于验证节点经济学的信息,请参阅这篇入门文章。
一旦区块链正常运行,它就开始处理和存储新信息。在 Solana 的情况下,它开始非常迅速地处理和存储新信息。开发者需要访问存储在区块链中的信息以用于他们的系统中。然而,不同的应用有不同的需求。一个用例可以简单到转移单个代币,也可以复杂到在极低延迟下执行原子套利交易,与其他高频交易者竞争。
你可能会注意到这里的一个问题——我们现在需要一个能够处理极其多样化的信息请求,同时仍然能够对区块的有效性进行投票,甚至生成新区块的节点。虽然这样的节点是可能的,但它们的系统要求将非常高,以至于降低了运行节点的可访问性。
Solana 通过引入一种新型的节点来解决这个问题,这种节点仍然会跟踪区块链上的所有信息,但 不会对其进行投票或生成区块。换句话说,这种节点类型——RPC 节点——只响应数据请求,并不参与共识。要查看 Solana 节点可用的完整 API 请求列表,请参阅此处的官方规范。
与普遍看法相反,运行 Solana 节点不需要任何 SOL(Solana 区块链的原生货币)。只有在你想参与共识时才需要 SOL,因为发送投票需要支付少量的交易费用。
具体的系统要求将取决于节点的用途(这些要求可以根据自定义情况进行相当多的调整),但以下是一些粗略的入门指南:
请注意,目前正在进行多个验证节点软件的重写,旨在在较少硬件上获得更高的性能,其中最著名的是 Firedancer。
网络的安全性和可访问性由节点本身决定。因此,运行 Solana 节点是一项严肃的工作和责任。如果你的节点基础设施不可靠,你将在经济上受到惩罚。对于 RPC 节点来说,你的应用、系统和用户也会受到影响。后果可能非常严重——从数据错误(可能会影响税务和财务数据)到你的应用无法使用。
因此,一些公司应运而生,专门致力于改进这一过程。RPC 提供商从可靠性、性能和可扩展性的角度设计这些系统——以便开发者只需要专注于构建出色的产品,而不必担心其他问题。
应从多个维度来评判 RPC 提供商:
你的 RPC 提供商对他们提供基础设施的区块链了解得如何?他们是否深刻理解系统架构,跟上所有更新,并参与治理进程?还是因为支持不同需求的多个区块链而分散了精力?确保你的 RPC 提供商始终是你可信赖的信息来源,以正确处理诸如链拥堵、故障和安全事件等非线性事件非常重要。
大多数 RPC 在平静时期表现良好,但在高流量下它们能否保持稳定?它们发生故障的频率如何?这些故障如何传达给你?你在生产环境受到压力测试之前往往不会了解到其后果。通常,选择有良好记录的团队更为明智。
RPC 能否处理突发的流量激增?如果你的使用量随着业务增长而逐月增加,会发生什么?你的延迟会变得更糟吗?你的 RPC 提供商是否在帮助你优化调用以构建可扩展的系统?他们在这方面是否积极主动?
你如何保证 RPC 返回给你的数据是正确的?节点基础设施是否始终与链保持同步,还是返回了过时的数据?这在多链节点提供商中是一个非常常见的问题,因为他们希望在具有不同性能特征的多个链上重用相同的架构。
你的 RPC 提供商支持哪些地理区域?例如:你的亚洲用户是否比美国用户看到更高的延迟?
区块链技术仍然处于早期阶段。每天都有新的问题被发现。确保你的 RPC 提供商为你提供快速的响应时间、领域专业知识和咨询服务以便你调试系统非常重要。
定价 透明度如何?所有 RPC 方法的费用是否相同?如果你超出每月使用量会发生什么?价格是否合理扩展,还是你现在需要重新谈判合同或更换提供商?
还需要考虑额外的 API 和功能。
在构建应用程序时,你是否需要集成许多其他服务提供商,还是你的 RPC 提供商也提供了许多其他 API 来帮助你在所选的链上构建?如果你需要数据流、专用基础设施或其他领域特定的 API,该怎么办?
选择合适的 RPC 提供商是你作为加密开发者最重要的决定。这一决策直接影响你的业务,涉及产品、财务,最终影响到成功。
基于上述标准,以下是一些顶级的 Solana RPC 提供商列表:
我们专门专注于 Solana 基础设施。因此,每个系统都是基于 Solana 开发者及其需求构建的。特别是,Solana 开发速度快,要求全面的支持、领域专业知识和可靠性。Helius 支持了 Solana 历史上最大的事件,包括 Helium 的区块链迁移。
一家 Solana 验证节点/RPC 提供商,定期为生态系统提供开源贡献。
如果你的应用本质上是多链的,并且你想尽量减少节点提供商的数量,Alchemy 提供了一个强大的多链服务。
如果你想运行验证节点而不是 RPC 节点,并且你是企业级客户,Blockdaemon 可能是一个不错的选择。
你现在对 Solana 节点的工作原理有了扎实的了解。如果你想在不担心运行自己节点的操作、维护和成本的情况下开始在 Solana 上构建——你可以此处 免费试用 Helius RPC。如果你遇到任何问题,我们每天 24 小时都在 Discord 上——祝你构建愉快!
- 原文链接: helius.dev/blog/solana-n...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!