刚开始在 Solana 上做开发,看到"RPC"这个词出现在到处,但搞不清它到底是什么——这篇就是给你的。我们把 Solana RPC 节点是什么、跟 validator 有什么分工、private RPC 是什么、服务商到底在帮你做什么、怎么按你的负载挑一家这几件事讲清楚。
读完之后,你应该能带着判断力看服务商营销页,选对工具,不被话术带跑。
RPC server 是什么
RPC 全称 Remote Procedure Call(远程过程调用)。在区块链场景下,RPC server 就是你的应用跟网络对话的那一层 API——读链上数据、提交交易、查状态、监听事件,全在这里做。
你的代码不是直接跟"Solana"对话的,而是跟一个具体的节点对话。这个节点要么是 validator(参与共识),要么挂在 validator 下游(只做 RPC,不投票)。不管哪种,你调用的都是同一套 RPC 接口。
举个例子:
const connection = new Connection("https://api.mainnet-beta.solana.com");
const balance = await connection.getBalance(publicKey);
https://api.mainnet-beta.solana.com 就是 RPC server,getBalance 是 RPC 方法。server 收到请求,查它本地的链状态副本,把结果返回给你。
sendTransaction 走的也是同样的流程——你把签好的交易交给 RPC,RPC 负责把它送到下一个出块的 validator。
Solana RPC vs validator
这两个概念很多人混着用,但不是一回事:
- validator 参与共识。它出块、投票,按 stake 加权,要承担经济责任。
- Solana RPC 节点 跟 validator 跑同一份链客户端代码,但配置成处理 API 流量,不参与投票。它镜像链状态,负责提交交易和回答查询。
实际生态里,你看到的"Solana RPC 服务商"运营的是专门做 API 的集群——通过 SWQoS 这套机制把交易快速送到当前出块的 validator。你在服务商注册,拿到的是一个发请求的入口;链本身还是那张 validator 网络。
"Private RPC"到底是什么
"private RPC"这个词在不同语境下意思不一样,先把几种用法分清楚:
-
专用 private RPC——你独享一个 RPC 实例,不跟别的客户共享。没有吵闹邻居问题,延迟可预测。一些服务商作为高级档位卖。
-
私有路由——BoltTx 这类服务商在做的事。底层基础设施可以共享,但你提交的交易不会经过机器人扫描的公开通道。隐私在路由层,不在硬件层。
-
自托管 RPC——你自己跑节点。完全隐私,但运维责任也完全是你的(为什么大多数团队都不该走这条路,看企业那篇)。
对交易类负载,你大概率想要的是第 2 种私有路由——它直接挡掉三明治被夹。对延迟敏感的企业负载,专用 private 实例可能也合理。
Solana RPC 服务商到底做什么
一家有水准的 RPC 服务商不只是"让你能调方法"。整套技术栈大致是这样:
- 运营自己的 RPC 集群,部署在网络上对延迟有利的位置
- 健康检查 + 负载均衡横跨整个集群
- 过滤滥用流量,不让一个坏客户拖垮整个池子
- 智能交易提交——走 SWQoS 路径优先上链、设合适的 tip、按合适的条件重试
- 镜像链状态,读请求不用每次都打到链上
- 提供可观测性,让你能看到自己流量的状况
服务商之间的差距,就在这每一项做得多好。两家都给你一个 HTTPS 端点,但 P95 延迟画像可能天差地别。一家可能借公开通道把你的交易暴露给 MEV 机器人;另一家默认走私有路由。端点 URL 看着一样,行为差很远。
区块链 RPC 服务商:Solana 的特殊性
通用的"区块链 RPC 服务商"主要分三类:以太坊起家的(Alchemy、Infura、Chainstack)、Solana 起家的(Helius、Triton One、BoltTx)、多链平台(QuickNode、Ankr)。
Solana 这边玩法跟其他链不太一样:
- 没有公开 mempool。交易直接发给下一个排定的 validator。所以"私有 mempool"不是合适的框架——重点是经过 RPC 这一层的路径,会不会在交易上链前把它泄出去。
- 专属 SWQoS(权益加权服务质量)。Validator 优先处理走 SWQoS 路径的 RPC 节点的交易。不支持 SWQoS 的服务商,在拥堵期会落后得很明显。
- MEV 在 validator 这一侧,不在 mempool 这一侧。重要的保护跟以太坊不一样。
- 亚秒级确认在 Solana 上是可达的,这改变了"够快"作为基线的意义。
一家在以太坊上做得好的多链服务商,不一定在 Solana 上也能做好。以太坊上赢的优化,不全部能搬过来。
怎么挑 RPC 服务商
按你做的事走:
在发交易(交易、DEX、mint、机器人、AI agent)
你需要:
- 文档化的亚秒级确认表现
- 专属 SWQoS + 优先级连接
- 原生 Anti-MEV(路由层挡三明治被夹)
- 每笔签名级别的遥测,方便 debug 投递问题
- 按上链交易(不是尝试)收费的定价模型
这是 BoltTx 的主战场。试免费档做 benchmark。
在做索引或数据分析
你需要:
- 解析过的交易 API(不用自己解原始 JSON)
- 流式订阅
- Webhook
- NFT 元数据(如果相关)
- 慷慨的读定价
Helius 在这一块做得好,广泛的 API 范围对读重型负载很有用。
通用全栈团队,还没专精化
你需要:
- 一个扎实的全方位平台
- 读写定价都合理
- 文档好读
- 之后专精化时迁移路径清晰
QuickNode、Helius、Triton One 都合适。按团队熟悉度和定价挑。
企业级团队、要求严格
你需要:
- 文档化的 SLA
- 每客户隔离
- 秒级延迟遥测
- 真人客户经理
完整清单看企业指南。
几种常见的 Solana RPC 误解
经常碰到这几种说法,都不太对:
"公共 RPC 用在生产没问题。" 有限流、没 SLA、经常落后。开发可以,生产绝对不行。
"所有 RPC 服务商延迟都一样。" P50 在不同服务商间可能差不多。P95 和拥堵期间的长尾,才是真正区分高下的地方。永远要 benchmark。
"认真的负载就得自己跑节点。" 通常正相反。自托管 Solana validator/RPC 运维成本很高,大多数尝试的团队一年内会撤回。架构对的托管服务商,在大多数用例上都比自托管好。
"RPC 服务商之间可以互换。" 读流量是这样的,大体上可以。发送不是——三明治被夹敞口、拥堵期的上链率、费用画像,差别都很大。
"刚起步用最便宜的就行。" 让你的交易被夹的最便宜服务商,其实是悄悄最贵的。算交付价值,不要只看标价。
把 BoltTx 接进来用
想跳过服务商调研、用一个为发交易量身打造的:
import { Connection } from "@solana/web3.js";
const connection = new Connection(
"https://bolttx.io/?api-key=YOUR_API_KEY",
"processed"
);
免费档注册,交易上链才收费。如果你的负载读重型、需要解析 API,把 BoltTx 跟 Helius 配对是常见组合。
常见问题
一句话讲清 Solana RPC server 是什么? 暴露 Solana JSON-RPC 接口的服务器,让你的应用读链状态、提交交易。
Solana RPC 跟 validator 是一回事吗? 不是。validator 参与共识,RPC 节点处理 API 流量。同一份软件,不同角色。
Solana 的 private RPC 是什么? 要么是只给你一个客户用的专用 RPC 实例,要么是不把你的交易暴露给公开通道的路由层。BoltTx 默认提供后者。
怎么挑 Solana RPC 服务商? 发交易优先看亚秒级确认、专属 SWQoS、Anti-MEV;读优先看解析 API 和定价;企业优先看 SLA、隔离、可观测性。
能同时用多个 RPC 服务商吗? 能,常见的组合是 BoltTx 发交易、Helius 读 / 索引。两边集成点独立。
mainnet-beta RPC 跟 devnet 有什么区别? Mainnet-beta 是真 Solana,带真价值。Devnet 是独立的测试集群。别把没在 devnet 上测过的东西直接部到 mainnet。