集群和公共 RPC 端点

Solana blockchain 有几个不同的验证组,被称为 Clusters。 每个集群在整体生态系统中担任不同的目的,并 包含专用的 api 节点来满足其各自集群的 JSON-RPC 请求。

集群中的各个节点由第三方拥有和运营,每个都有一个公共端点可用。

Solana 公共 RPC 端点 #

Solana Labs 组织为每个集群运营一个公共 RPC 端点。这些公共端点都受到速率限制,但 可供用户和开发人员与 Solana 区块链进行交互。这些公共端点都受到速率限制,但可供用 户和开发人员与 Solana 区块链进行交互。

Info

公共端点速率限制可能会更改。 本文档中列出的具体速率限制不保证是最新的。

使用不同集群的浏览器 #

许多热门的 Solana 区块链浏览器支持选择任何集群,通常允许高级用户添加自定义/私有 RPC 端点。

一些 Solana 区块链浏览器的示例包括:

On a high level #

  • Mainnet: Live production environment for deployed applications.
  • Devnet: Testing with public accessibility for developers experimenting with their applications.
  • Testnet: Stress-testing for network upgrades and validator performance.

Example use cases: You may want to debug a new program on Devnet or verify performance metrics on Testnet before Mainnet deployment.

ClusterEndpointPurposeNotes
Mainnethttps://api.mainnet-beta.solana.comLive production environmentRequires SOL for transactions
Devnethttps://api.devnet.solana.comPublic testing and developmentFree SOL airdrop for testing
Testnethttps://api.testnet.solana.comValidator and stress testingMay have intermittent downtime

Devnet #

Devnet 是一个供任何想要测试 Solana 的用户、代币持有者、应用程序开发人员或验证者 使用的游乐场。

  • 应用程序开发人员应该针对 Devnet。
  • 潜在的验证者应该首先针对 Devnet。
  • Devnet 与 Mainnet Beta 之间的主要区别:
    • Devnet 代币不是真实的
    • Devnet 包含一个代币水龙头,用于应用程序测试的空投
    • Devnet 可能会进行账本重置
    • Devnet 通常运行与 Mainnet Beta 相同的软件发布分支版本,但可能比 Mainnet Beta 运行更新的次要发布版本。
  • Devnet 的 Gossip 入口点:entrypoint.devnet.solana.com:8001

Devnet 端点 #

  • https://api.devnet.solana.com - 单个 Solana Labs 托管的 api 节点;受速率限制

示例solana命令行配置 #

要使用 Solana CLI 连接到devnet集群:

solana config set --url https://api.devnet.solana.com

Devnet 速率限制 #

  • 每个 IP 每 10 秒的最大请求数:100
  • 每个 IP 每 10 秒对单个 RPC 的最大请求数:40
  • 每个 IP 的最大并发连接数:40
  • 每个 IP 每 10 秒的最大连接速率:40
  • 每 30 秒的最大数据量:100 MB

Testnet #

Testnet 是 Solana 核心贡献者在一个实时集群上对最近发布的功能进行压力测试的地方, 重点放在网络性能、稳定性和验证者行为上。

  • Testnet 代币不是真实的
  • Testnet 可能会进行账本重置。
  • Testnet 包含一个代币水龙头,用于应用程序测试的空投
  • Testnet 通常比 Devnet 和 Mainnet Beta 运行更新的软件发布分支
  • Testnet 的 Gossip 入口点:entrypoint.testnet.solana.com:8001

Testnet 端点 #

  • https://api.testnet.solana.com - 单个 Solana Labs api 节点;受速率限制

示例solana命令行配置 #

要使用 Solana CLI 连接到testnet集群:

solana config set --url https://api.testnet.solana.com

Testnet 速率限制 #

  • 每个 IP 每 10 秒的最大请求数:100
  • 每个 IP 每 10 秒对单个 RPC 的最大请求数:40
  • 每个 IP 的最大并发连接数:40
  • 每个 IP 每 10 秒的最大连接速率:40
  • 每 30 秒的最大数据量:100 MB

Mainnet beta #

一个无需许可的、持久的 Solana 用户、构建者、验证者和代币持有者集群。

  • 在 Mainnet Beta 上发行的代币是真实的 SOL
  • Mainnet Beta 的 Gossip 入口点:entrypoint.mainnet-beta.solana.com:8001

Mainnet beta 端点 #

  • https://api.mainnet-beta.solana.com - Solana Labs 托管的 api 节点集群,由负 载均衡器支持;受速率限制

solana命令行配置示例 #

要使用 Solana CLI 连接到mainnet-beta集群:

solana config set --url https://api.mainnet-beta.solana.com

Mainnet beta 速率限制 #

  • 每个 IP 每 10 秒的最大请求数:100
  • 每个 IP 每 10 秒对单个 RPC 的最大请求数:40
  • 每个 IP 的最大并发连接数:40
  • 每个 IP 每 10 秒的最大连接速率:40
  • 每 30 秒的最大数据量:100 MB
Info

公共 RPC 端点不适用于生产应用程序。 在启动应用程序、放置 NFT 等时,请使用专用/ 私有 RPC 服务器。 公共服务可能会受到滥用,速率限制可能会在没有事先通知的情况下 更改。 同样,高流量的网站可能会在没有事先通知的情况下被阻止。

常见的 HTTP 错误代码 #

  • 403 —— 你的 IP 地址或网站已被阻止。 是时候运行你自己的 RPC 服务器或找到私人服 务了。
  • 429 —— 你的 IP 地址超过了速率限制。 慢下来! 使用 Retry-After HTTP 响应头来确定下次请求前需要等待多长时间。