Logo
新用户订阅 RPC,首月享 6.5 折优惠查看优惠
RPC Assistant

哪些 Solana RPC 提供商提供专用节点与共享节点?

摘要

大多数 Solana RPC 提供商默认提供共享的多租户端点,只有部分允许你迁移到专用节点或私有集群。实际区别在于隔离性:共享端点将许多调用者汇集到同一后端,而专用节点为你的工作负载提供专属资源和配置。OnFinality 为 Solana 提供两种模式,因此你可以从共享 RPC API 开始,当流量、速率限制需求或 WebSocket 使用量超出时升级到专用节点。本文解释如何区分两者、哪些工作负载适合每种模式,以及在承诺之前需要验证什么。

Solana RPC 容量不是单一产品。大多数提供商销售共享的多租户端点,少数允许你迁移到专用节点或私有集群。你正在回答的查询实际上是两个问题:提供商是否提供两种模式,以及你如何知道你的工作负载需要哪一种?本页直接回答这个问题,然后逐步分析权衡,以便你做出选择。

快速回答:谁提供什么

大多数 Solana RPC 提供商默认提供共享端点。专用节点通常是单独的高级层级,一些提供商将其作为可配置选项提供,而另一些则根本不提供。

OnFinality 为 Solana 提供两种模式:你可以立即开始使用的共享 RPC API,以及当工作负载需要隔离时可以迁移到的专用节点基础设施。你可以在 Solana RPC API 页面 上查看共享端点和传输选项,在 专用节点页面 上查看专用模式。

如果你只需要读取账户、偶尔发送交易或进行原型设计,共享端点通常就足够了。如果你运行索引器、交易机器人、高频 getProgramAccounts 调用或持久 WebSocket 订阅,那么专用容量是值得评估的模式。

共享与专用:真正的区别

共享 RPC 意味着许多客户访问同一个后端池。提供商管理容量,你获得的速率限制反映了租户之间的公平使用。它成本效益高且启动快速,但你的吞吐量可能受到其他租户流量的影响,并且你的配置选项仅限于提供商所暴露的内容。

专用节点意味着节点(或集群)为你的工作负载服务。你可以获得更可预测的资源分配、调整限制的能力以及与其他客户峰值的隔离。权衡是成本以及需要考虑规模、故障转移和如何扩展。

两者都不是普遍更好的。正确的选择取决于你的请求特征,而不是提供商的营销层级。

决策指南:哪种模式适合你的工作负载

使用此表将你的工作负载映射到通常适合的模式。这是一个起点,不是规则。

工作负载信号共享端点通常适合专用节点通常适合
流量模式低到中等,突发性持续高流量,可预测的峰值
方法组合getBalance、getLatestBlockhash、sendTransaction大量 getProgramAccounts、getSignaturesForAddress、日志扫描
WebSocket 使用偶尔订阅持久、许多并发订阅
隔离需求无需要自己的限制和配置
成本敏感度高优先级低于可预测性
团队阶段原型、早期产品生产、扩展或 SLA 驱动

如果你的大部分检查落在左列,请从共享开始。如果几个落在右列,请在遇到瓶颈之前评估专用容量。

如何判断提供商是否真正提供专用节点

“专用”一词使用得很宽泛。在承诺之前,要求具体细节。

  • 专用选项是单个节点、集群还是共享池的保留切片?这些在负载下的行为不同。
  • 你能配置速率限制,还是由层级固定?
  • 专用层级是否包含 WebSocket 支持,还是单独计费?
  • 节点重启或升级期间会发生什么,是否有故障转移路径?
  • 你能获取归档数据,还是节点被修剪?

无法清楚回答这些问题的提供商可能只是在专用标签下转售共享池。

Solana 特有的改变计算的因素

Solana 的账户模型和高出块率使得某些工作负载比其他链上看起来更重。

  • getProgramAccounts 可能返回大量结果集并且开销很大。在共享端点上,它通常是第一个达到限制的调用。
  • 对于繁忙程序的 getSignaturesForAddress 和日志查询可能很重,并且在索引器中很常见。
  • WebSocket 订阅(accountSubscribe、logsSubscribe、slotSubscribe)保持长连接,共享池可能会限制。
  • 交易落地取决于及时的区块哈希和领导者信息,因此延迟和连接稳定性对交易工作负载很重要。

如果你的应用依赖其中任何一项,专用容量值得尽早定价,而不是在生产事故之后。

连接到 Solana 端点

共享 Solana 端点遵循标准 JSON-RPC 格式。OnFinality 为 Solana 发布了一个公共 HTTP 端点和匹配的 WebSocket 端点:

curl https://solana.api.onfinality.io/public \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "getLatestBlockhash",
    "params": [{"commitment": "confirmed"}]
  }'

对于 WebSocket 订阅,将客户端指向匹配的 WS URL:

import WebSocket from "ws";

const ws = new WebSocket("wss://solana.api.onfinality.io/public-ws");

ws.on("open", () => {
  ws.send(JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "slotSubscribe"
  }));
});

ws.on("message", (data) => {
  console.log(data.toString());
});

当你迁移到专用节点时,URL 和任何认证令牌会改变,但 JSON-RPC 方法保持不变。这意味着你可以保留客户端代码,通过配置交换端点,而不是重写。

迁移检查点:从共享迁移到专用

如果你决定升级,请将其视为迁移,而不是切换。

  1. 清点你的方法。列出你的应用进行的调用,并标记重的方法(getProgramAccounts、日志扫描、订阅)。
  2. 测量当前限制。记录你今天在哪里遇到速率限制或 WebSocket 连接断开。
  3. 确定节点规模。根据你的方法组合以及是否需要归档数据来匹配 CPU、内存和磁盘。
  4. 规划故障转移。决定如果专用节点重启会发生什么,以及是否保留共享端点作为回退。
  5. 逐步切换。将一定比例的流量路由到新端点,并在完全切换之前比较错误率和延迟。
  6. 持续监控。迁移后观察请求率、错误率、订阅数量和 slot 延迟。

一个简单的监控探针可以帮助你在切换期间比较端点:

curl -s -o /dev/null -w "%{http_code} %{time_total}s\n" \
  https://solana.api.onfinality.io/public \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getHealth"}'

成本和风险权衡

共享端点以可预测性换取较低成本。专用节点以成本换取隔离和控制。大多数团队犯的错误是长期停留在共享上因为它便宜,然后在流量高峰时手忙脚乱。第二个最常见的错误是在了解方法组合之前购买专用容量,导致规模过大或过小。

一个合理的路径是从共享开始,监测你的使用情况,并设置一个阈值(例如,持续的速率限制错误或订阅断开),触发迁移到专用。这样早期保持低成本,避免后期仓促迁移。你可以在 RPC 定价页面 上比较层级,如果你运行多链工作负载,可以查看完整的 支持的 RPC 网络。

关键要点

  • 大多数 Solana RPC 提供商默认提供共享端点;专用节点是单独层级,并非所有提供商都提供。
  • OnFinality 提供共享 Solana RPC API 和专用节点基础设施,因此你可以从共享开始并升级。
  • 决策取决于工作负载:大量 getProgramAccounts、日志扫描和持久 WebSocket 订阅通常需要专用容量。
  • 在承诺之前与提供商核实“专用”的含义:单节点 vs 集群、可配置限制、WebSocket 支持和故障转移。
  • 如果你的客户端使用标准 JSON-RPC 方法,从共享迁移到专用主要是配置更改。

常见问题

所有 Solana RPC 提供商都提供专用节点吗?

不。许多只提供共享的多租户端点。专用节点通常是更高级别,可用性因提供商而异。

共享 Solana 端点对生产环境足够好吗?

对于低到中等流量和轻量方法使用,它可以。如果你运行索引器、交易机器人或大量订阅工作负载,请评估专用容量。

迁移到专用 Solana 节点时有什么变化?

通常是端点 URL 和任何认证令牌。JSON-RPC 方法保持不变,因此客户端代码更改最小。

OnFinality 为 Solana 提供两种模式吗?

是的。你可以从共享 Solana RPC API 开始,并在工作负载需要时迁移到专用节点基础设施。详情请参阅 Solana RPC API 页面 和 专用节点页面。

我如何知道何时升级?

注意持续的速率限制错误、WebSocket 连接断开或重方法上的延迟上升。设置一个阈值,并将其视为评估专用容量的触发条件。

RPC 知识库

相关 RPC 内容

网络 RPCScroll

关于 Scroll RPC 端点,我需要了解什么?

# 关于 Scroll RPC 端点,我需要了解什么? Scroll RPC 端点至关重要,因为 Web3 应用程序依赖于稳定的端点访问来实现读取、交易、仪表盘和后端工作流。正确的设置应匹配您的工作负载,支持您所需的网络和测试网,使限制可见,并在共享 RPC 不再足够时为您提供扩展路径。 对于 Sc...

网络 RPCSui

Sui 公共 RPC:它能提供什么以及何时该升级

Sui 公共 RPC 端点是一种共享的、无需认证的 JSON-RPC URL,允许你读取链上状态、提交交易,并在 Sui 主网或测试网上进行原型开发,而无需自行搭建节点。这是让钱包或脚本与 Sui 通信的最快方式,但它们是共享容量,没有账户、没有 SLA,也无法知道还有谁在使用同一个 URL。 本页...

区块链基础设施Bittensor

2025 年 Bittensor 子网注册费用是多少?

Bittensor 子网注册费用并非固定费用。它由网络的动态注册机制设定,每次注册子网时费用会提高,并随时间衰减,因此你支付的金额取决于当前需求和交易被打包的确切区块。在 2025 年,你应该将费用视为一个动态目标,从链上实时读取,而不是依赖静态数字。 本文解释了费用如何计算、如何通过 RPC 查询...

网络 RPCAbstract

Abstract RPC Endpoint: What You Need to Connect to Abstract

Abstract is an Ethereum Layer 2 network built with zkSync technology. To connect your dApp or wallet to Abstract, you need an RPC endpoint address. Th...

网络 RPCTON

RPC TON Network: Endpoints, Provider Comparison, and Troubleshooting

Looking for an RPC TON network endpoint? This guide compares TON RPC providers, provides step-by-step setup instructions, and highlights common pitfal...

测试网 RPCBitcoin

什么是比特币测试网 RPC,如何使用它?

比特币测试网 RPC 端点允许开发者连接到比特币测试网络,在不冒真实资金风险的情况下进行开发和测试。本文解释了什么是比特币测试网 RPC,如何选择端点,以及如何发起你的第一个 JSON-RPC 调用。...

永远不用担心基础设施

OnFinality 消除了 DevOps 的繁重工作,让您能够更聪明、更快地构建。

开始