Logo
RPC Assistant

最新的 Solana RPC 更新有哪些,它们如何影响您的 dApp?

摘要

Solana RPC 更新包括新的 JSON-RPC 方法、现有端点的更改,以及公共和托管基础设施处理负载的方式的变化。及时了解这些更新很重要,因为 Solana 的高吞吐量和频繁的功能发布可能会改变您查询账户、提交交易和订阅实时数据的方式。

本文涵盖最新的 Solana RPC 更改、如何在 devnet 上测试它们,以及在公共、共享和专用 RPC 基础设施之间进行选择时需要考虑的事项。无论您是在调试新方法还是规划生产环境,您都会找到实用的指导和托管选项的链接。

快速决策指南:如何处理 Solana RPC 更新

Solana 的 RPC 接口会定期演进。新方法出现,现有方法被弃用,集群端点也会发生变化。在更新代码之前,请确定哪种基础设施层级适合您的工作负载:

  • 原型开发或黑客松:使用公共 devnet 端点或免费的托管层级。您可以测试新方法,而无需担心速率限制。
  • 中等流量的生产 dApp:具有身份验证访问和更高速率限制的托管 RPC 服务比公共端点更安全。
  • 高吞吐量的交易机器人或数据索引器:考虑使用专用节点以获得一致的性能并避免邻居干扰。

如果您不确定哪种选项适合,请从托管 RPC 服务开始并监控您的使用情况。您可以稍后迁移到专用节点。有关提供商选择标准的更深入比较,请参阅我们的选择 RPC 提供商指南

Solana RPC 近期有哪些变化

Solana 的 RPC API 在官方 Solana RPC 概述 中有文档说明。最近的更新主要集中在:

  • 新方法,用于查询优先费用和近期性能样本,例如 getRecentPrioritizationFees
  • 弃用 旧方法,这些方法被更高效的替代方案所取代。
  • 承诺级别更改,影响数据可用的速度。
  • WebSocket 订阅改进,用于实时更新。

及时了解这些更改有助于避免在方法被弃用或响应格式更改时破坏您的 dApp。

Solana 集群端点一览

Solana 有三个公共集群,每个都有自己的端点。下表总结了它们:

集群公共 RPC 端点用例
主网https://api.mainnet.solana.com使用真实 SOL 的生产网络
Devnethttps://api.devnet.solana.com使用水龙头免费 SOL 进行开发者测试
Testnethttps://api.testnet.solana.com验证者和网络测试

公共端点是共享基础设施,不适用于生产应用程序。它们在负载下可能返回 429(速率限制)或 403(阻止)错误。对于生产流量,请使用托管 RPC 服务或专用节点。

如何在 devnet 上测试新的 RPC 方法

在将更改部署到主网之前,请在 devnet 上测试它们。OnFinality 提供了一个免费的公共 devnet 端点。以下是如何调用 getHealth 等方法:

curl -H 'Content-Type: application/json' \
  -d '{"id":1,"jsonrpc":"2.0","method":"getHealth"}' \
  'https://solana.api.onfinality.io/public'

对于 WebSocket 订阅,请使用公共 WebSocket 端点:

wss://solana.api.onfinality.io/public-ws

您也可以使用官方 devnet 端点 https://api.devnet.solana.com 进行快速测试。要获取 devnet SOL,请使用 Solana 水龙头

理解承诺级别

许多 Solana RPC 方法接受 commitment 参数,该参数控制节点返回数据前区块必须达到的最终性程度。三个级别是:

  • processed:节点最近处理的区块。最快,但可能被回滚。
  • confirmed:已获得超级多数权益投票的区块。更稳定。
  • finalized:具有最大锁定时间的区块,确认强度最高。

选择正确的承诺级别会影响延迟和可靠性。对于必须不可逆的交易,请使用 finalized。对于速度更重要的实时更新,confirmed 通常是一个很好的平衡。

您应该了解的 Solana RPC 方法更新

最近的 Solana RPC 更新引入或改进了几个方法。以下是一些值得关注的方法:

  • getRecentPrioritizationFees:返回最近的优先费用,可用于费用估算。
  • getLatestBlockhash:取代已弃用的 getRecentBlockhash,用于获取最新区块哈希。
  • isBlockhashValid:检查区块哈希是否仍然有效,可用于交易重试。
  • simulateTransaction:模拟交易而不发送,帮助您捕获错误。

始终查阅官方 Solana RPC HTTP 方法 参考,以获取完整列表和请求格式。

公共 RPC 与托管 RPC:需要注意什么

当 Solana RPC 更新推出时,公共端点可能滞后或在负载下变得不稳定。像 OnFinality 这样的托管 RPC 服务通常能更快地更新其基础设施并提供更好的可靠性。以下是一个快速比较:

方面公共 RPC托管 RPC (OnFinality)
速率限制低(例如,5 请求/秒)通过身份验证访问最高 500 请求/秒
可靠性共享,可能返回 429/403专用基础设施,更好的正常运行时间
WebSocket 支持有,但有限有,提供专用端点
存档数据不可用支持
支持提供优先支持

对于生产应用程序,托管 RPC 服务通常是更安全的选择。您可以从免费计划开始,并根据需要扩展。有关详细信息,请参阅 RPC 定价

如何及时了解 Solana RPC 更改

为了保持您的 dApp 兼容,请遵循以下做法:

  • 监控 Solana 官方文档,了解弃用通知和新方法。
  • 订阅 Solana 的 GitHub 发布,了解客户端更新。
  • 在 devnet 上测试新方法,然后再在生产环境中使用。
  • 使用托管 RPC 提供商,它们会跟踪协议更改并自动更新其端点。

OnFinality 的 Solana 网络页面 列出了支持的方法并提供实时端点状态。您还可以查看 支持的网络 了解其他链。

关键要点

  • Solana RPC 更新包括新方法、弃用和承诺级别更改。
  • 公共端点适合测试,但不适合生产流量。
  • 在部署到主网之前,先在 devnet 上测试新方法。
  • 选择托管 RPC 服务以获得更好的可靠性、更高的速率限制和支持。
  • 通过关注官方文档和使用跟踪协议更改的提供商来保持信息畅通。

常见问题解答

最新的 Solana RPC 版本是什么?

Solana RPC 使用 JSON-RPC 2.0。没有版本号,但方法会随时间添加和弃用。请查看官方文档以获取当前方法列表。

如何获取 Solana RPC 端点?

您可以使用公共端点 https://api.mainnet.solana.com 或像 OnFinality 这样的托管服务。对于生产环境,请注册 API 密钥以获得更高的速率限制。

devnet 和 testnet 有什么区别?

Devnet 供开发者使用免费 SOL 测试他们的 dApp。Testnet 用于验证者和网络测试。两者都与主网分开。

如何处理 Solana RPC 上的速率限制?

使用具有更高速率限制的托管 RPC 提供商,或实现指数退避的重试逻辑。公共端点限制较低,可能返回 429 错误。

我可以在 Solana 上使用 WebSocket 进行实时更新吗?

是的,Solana 支持账户、程序、日志和插槽更新的 WebSocket 订阅。对于 OnFinality 的公共 WebSocket 端点,请使用 wss://solana.api.onfinality.io/public-ws

如何在共享和专用 Solana RPC 之间选择?

共享 RPC 对于中等流量具有成本效益。专用节点提供一致的性能,更适合高吞吐量应用程序。在决定之前,请评估您的工作负载和预算。

有关 Solana RPC 端点和方法的更多详细信息,请访问 Solana 网络页面 或探索 RPC 定价

RPC 知识库

相关 RPC 内容

Network Rpc

Arbitrum API:端点、方法及生产环境建议

Arbitrum API 允许开发者使用标准的以太坊 JSON-RPC 方法与 Arbitrum One 和 Arbitrum Nova 交互,完全兼容 EVM。本文涵盖链设置、常见 API 调用、提供商选择标准以及生产环境 dApp 的最佳实践。...

Network Rpc

如何使用币安智能链API?

币安智能链(BSC)API提供JSON-RPC端点,用于与BNB智能链网络交互。开发者使用这些API查询区块链数据、发送交易和部署智能合约。本指南涵盖可用方法、端点URL以及如何通过代码示例开始使用。...

Blockchain Infrastructure

公共RPC节点:何时依赖免费端点以及何时升级

公共RPC节点是免费、共享的端点,允许任何人无需运行自己的节点即可与区块链交互。它们非常适合原型开发和测试网,但在生产负载下可能因速率限制和停机而变得不可靠。本文帮助您评估何时公共RPC足够,以及何时应切换到专用或私有RPC服务。...

Blockchain Infrastructure

加密节点托管:何时租用基础设施而非自行运行

加密节点托管是指在第三方基础设施上运行区块链节点,而非自行托管。本文解释了构建与购买的权衡,帮助您评估托管选项,并提供决策清单,以便在自管理服务器、VPS提供商和OnFinality等托管节点服务之间做出选择。...

Rpc Provider Selection

如何为生产应用选择 Kaia RPC 提供商

选择 Kaia RPC 提供商意味着在可靠性、延迟、数据访问和定价之间取得平衡,以适应您的应用流量模式。公共端点适合原型开发,但生产应用通常需要具有更高速率限制、WebSocket 支持和归档数据的托管提供商。本指南将介绍关键标准和常见陷阱,帮助您选择不会在负载下崩溃的基础设施。...

Network Rpc

Phala RPC 端点:链设置、连接指南和开发者资源

Phala Network 是一个 Polkadot 平行链,利用可信执行环境(TEE)提供机密智能合约。要与 Phala 交互,开发者需要可靠的 RPC 端点来读取链上数据、提交交易和部署 Phat Contracts。本文涵盖 Phala RPC 链设置、如何连接以及选择 RPC 提供商时的注意...

永远不用担心基础设施

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

开始