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

Alchemy BNB Smart Chain RPC:如何评估和配置 BSC 端点

摘要

搜索 Alchemy BNB Smart Chain RPC 的开发者通常想要一个可用的 BSC 端点、正确的链设置,以及判断托管提供商是否适合其工作负载的方法。本页提供 BNB Smart Chain 主网和测试网参数、一个请求示例,以及区分共享端点与专用节点基础设施的标准。它还解释了何时像 OnFinality 这样的托管 RPC API 比运行自己的 BSC 节点更合适,以及在迁移生产流量之前需要检查什么。

如果你正在搜索 Alchemy BNB Smart Chain RPC 端点,你很可能同时需要两样东西:让钱包或应用能够连接的准确 BSC 网络参数,以及判断托管 RPC API 还是专用节点才是你流量的长期归宿的方法。本页涵盖这两方面。它为你提供 BNB Smart Chain 主网和测试网设置、一个可用的请求示例,以及从快速测试迈向生产环境时重要的评估标准。

BNB Smart Chain(BSC)是一条 EVM 兼容链,因此任何通过 HTTP 或 WebSocket 提供标准 JSON-RPC 的端点都能与你已在使用的工具配合:ethers、viem、web3.js、Hardhat、Foundry 以及大多数钱包的网络对话框。提供商名称的重要性不如端点在你真实工作负载下的表现,这正是本页其余部分帮助你评估的内容。

链设置一览

当你将 BNB Smart Chain 添加到钱包、Hardhat 配置或后端客户端时,请使用这些值。链 ID 是最常导致连接失败的字段,因此请先确认它。

设置BNB Smart Chain 主网BNB Chain 测试网
链 ID5697
链名称BNB Smart Chain MainnetBNB Smart Chain Testnet
原生货币BNB(18 位小数)tBNB(18 位小数)
区块浏览器https://bscscan.comhttps://testnet.bscscan.com
传输方式HTTP、WebSocketHTTP
OnFinality 公共端点https://bnb.api.onfinality.io/publichttps://bnb-testnet.api.onfinality.io/public

OnFinality 为两个网络都提供公共端点,你可以在 BNB Smart Chain RPC 页面 和 BNB Chain 测试网 RPC 页面 查看完整的网络详情。公共端点适用于原型开发和低流量读取。对于持续流量、归档查询或 WebSocket 订阅,托管方案或专用节点通常是更好的选择。

何时共享端点足够,何时不够

在确定提供商之前,请将端点类型与工作负载相匹配。同一个 BSC 端点,对于黑客松演示来说完美无缺,但对于扫描多年日志的索引器来说可能成为瓶颈。

  • 原型开发和钱包测试: 公共或共享端点即可。你需要的是快速设置和正确的链设置,而不是容量保证。
  • 生产 dApp 的读写: 具有明确请求预算和故障转移的托管 RPC API 是实用的默认选择。你无需运营节点即可获得可预测的访问。
  • 繁重的 eth_getLogs、归档读取或 trace 调用: 这些是会给共享基础设施带来压力的工作负载。请规划归档支持并提高限制,或迁移到专用节点。
  • 对延迟敏感的交易或机器人: 共享端点会引入可变延迟。专用节点为你提供隔离的资源和稳定的连接。

如果你不确定自己属于哪一类,请从托管端点开始并对其进行监测。在决定是否升级之前,在真实负载下测量错误率和延迟。提供商选择指南 更深入地探讨了这一决策。

连接到 BNB Smart Chain

确认端点和链 ID 的一个快速方法是单次 JSON-RPC 调用。下面的示例使用 OnFinality 公共 BSC 端点。

curl -X POST https://bnb.api.onfinality.io/public \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

正确的响应会以十六进制返回链 ID:

{"jsonrpc":"2.0","id":1,"result":"0x38"}

0x38 十进制为 56,确认你位于 BNB Smart Chain 主网。如果你得到不同的值,说明你指向了错误的网络。

在 JavaScript 中,使用 viem 进行同样的检查如下所示:

import { createPublicClient, http } from 'viem'
import { bsc } from 'viem/chains'

const client = createPublicClient({
  chain: bsc,
  transport: http('https://bnb.api.onfinality.io/public'),
})

const chainId = await client.getChainId()
const block = await client.getBlockNumber()
console.log({ chainId, block })

对于钱包,请添加自定义网络,链 ID 为 56,符号为 BNB,并使用上面的 RPC URL。对于测试网工作,请使用链 ID 97、符号 tBNB 和测试网端点。测试网 BNB 可从公共水龙头获取;测试网端点不提供资金。

BSC RPC 提供商之间应比较什么

提供商选择是在控制力、成本和运维投入之间的权衡。下表按工作负载而非营销宣传来构建比较。OnFinality 排在首位,因为它是本网站详细记录的选项,但这些列适用于你评估的任何提供商。

提供商 / 选项最适合归档与 traceWebSocket运维投入
OnFinality RPC API生产 dApp、索引器、希望获得托管访问的团队在支持的方案中可用——请在网络页面确认支持低:托管端点和故障转移
OnFinality 专用节点高吞吐、延迟敏感或隔离的工作负载可配置支持低到中:托管节点,你控制容量
自托管 BSC 节点有严格数据控制或自定义需求的团队完全控制完全控制高:硬件、同步、升级、监控
其他托管提供商因方案和地区而异因情况而异因情况而异低,但请核实限制和归档支持

有两个问题可以区分严肃的提供商和单薄的提供商。第一,提供商是否支持你实际调用的方法——宽区块范围的 eth_getLogs、debug_traceTransaction,或历史区块的归档状态?第二,当节点故障时会发生什么:是否有自动故障转移,还是你的应用会一直看到错误直到你介入?在迁移之前请先问这两个问题。

迁移检查点

如果你要从另一个 BSC 端点迁移到新提供商,请将其视为受控变更,而不是简单替换 URL。

  1. 清点你的方法。 列出你的应用调用的每个 JSON-RPC 方法,包括任何 debug 或 trace 方法。确认目标方案支持每一个。
  2. 检查归档需求。 如果你查询历史状态或宽日志范围,请在切换前确认归档可用性。
  3. 在预发布环境测试。 将预发布环境指向新端点并运行集成测试,包括错误路径。
  4. 添加故障转移。 配置一个辅助端点,这样单个提供商中断不会导致你的应用宕机。
  5. 切换后监控。 至少跟踪一个完整流量周期的错误率、延迟百分位数和速率限制响应。

在新端点在你的真实负载下证明稳定之前,请保留旧端点的配置。回滚应该是一次配置更改,而不是重新部署。

常见故障模式及如何调试

大多数 BSC RPC 问题都归入少数几类。下表将症状映射到可能的原因。

症状可能原因首先检查
eth_chainId 返回错误的值端点指向了不同的网络确认 URL 和链 ID
负载下请求失败共享端点的速率限制查看你方案的请求预算
eth_getLogs 超时或报错区块范围太宽,或不支持归档缩小范围;确认归档访问
WebSocket 断开连接空闲超时或连接限制添加带退避的重连逻辑
历史状态调用失败非归档节点切换到支持归档的端点
多次调用结果不一致负载均衡的节点处于不同高度固定到单个节点或接受最终一致性

一个简单的监控探针可以帮助你尽早发现这些问题。按计划轮询 eth_blockNumber,如果它停止推进或错误率飙升就发出警报。

# 最小健康探针:确认节点正在推进
curl -s -X POST https://bnb.api.onfinality.io/public \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

请从与你的应用相同的区域运行此命令,这样你测量的延迟才能反映用户体验到的延迟。

BSC 的自建与购买

运行你自己的 BNB Smart Chain 节点让你拥有完全控制权,但这也意味着要配置能够跟上 BSC 吞吐量的硬件、管理磁盘增长、应用客户端升级,以及处理同步和重组事件。对许多团队来说,这种运维负担并不是他们想要构建的产品。

托管 RPC API 消除了大部分负担:你获得一个端点,提供商负责节点运营、升级和可用性。专用节点介于两者之间——你获得隔离的资源和可预测的性能,而无需自己管理底层基础设施。OnFinality 两者都提供,你可以在 RPC 定价页面 比较方案,或阅读关于 专用节点 的内容。

如果你的工作负载是突发性的或处于早期阶段,请从托管开始并逐步扩展。如果你有稳定的高吞吐量或严格的隔离要求,专用节点通常是更经济且可预测的选择。

关键要点

  • BNB Smart Chain 主网使用链 ID 56;测试网使用链 ID 97。连接失败时请先确认链 ID。
  • 公共端点适合原型开发;生产流量受益于具有故障转移的托管 RPC API。
  • 归档支持、eth_getLogs 限制和 WebSocket 行为是最常决定提供商是否合适的字段。
  • 将提供商迁移视为受控变更:清点方法、在预发布环境测试、添加故障转移,并在切换后监控。
  • OnFinality 提供托管的 BSC 端点和专用节点;查看 支持的 RPC 网络 和 RPC 定价,将方案与你的工作负载相匹配。

常见问题

Alchemy 的 BNB Smart Chain RPC 与其他 BSC 端点相同吗? 任何为链 ID 56 提供标准 JSON-RPC 的端点都能与 EVM 工具配合使用。提供商之间的差异体现在方法支持、归档访问、速率限制和故障转移行为上,而不是基本请求格式。

BNB Smart Chain 使用什么链 ID? 主网是 56(0x38)。测试网是 97(0x61)。使用错误的链 ID 是钱包连接失败最常见的原因。

BSC 需要归档节点吗? 仅当你查询历史状态或宽日志范围时才需要。标准的近期区块读写可在常规全节点上运行。在依赖归档之前请确认其可用性。

我可以在 BNB Smart Chain 上使用 WebSocket 吗? 可以。BSC 支持针对事件和新区块的 WebSocket 订阅。如果你在生产中使用它们,请添加带退避的重连逻辑,因为空闲连接可能会被断开。

如何将我的应用从一个 BSC RPC 提供商迁移到另一个? 在配置中更改端点 URL,保留一个辅助端点用于故障转移,并先在预发布环境运行集成测试。由于链 ID 保持不变,无需更改合约或钱包。

在哪里可以查看 OnFinality 支持哪些网络? 支持的 RPC 网络 页面列出了当前网络,BNB Smart Chain RPC 页面 有具体的端点和链详情。

RPC 知识库

相关 RPC 内容

网络 RPCMonad

什么是 peaq 主网,如何连接?

peaq 主网是面向 DePIN(去中心化物理基础设施网络)经济的生产级 Layer 1 区块链,旨在支持现实世界的设备和机器工作负载。本文解释了 peaq 主网是什么、其主要功能,以及如何使用 RPC 端点、链设置和实际示例连接您的应用程序。...

网络 RPCUnichain

什么是 Unichain RPC,如何连接?

Unichain 是一个基于 Superchain 构建的以太坊 Layer 2 汇总,专为 DeFi 和跨链流动性优化。要与 Unichain 交互,您需要一个 RPC 端点。本文涵盖链设置、公共和私有 RPC 选项,以及如何为您的项目选择合适的提供商。...

网络 RPCMantle

Mantle RPC:链设置、端点和如何选择提供商

Mantle 是一个兼容 EVM 的第 2 层 rollup,采用模块化架构,利用以太坊保证安全性,并使用自己的数据可用性层。要连接钱包和 dApp,您需要正确的 Mantle RPC 端点、链 ID 和网络设置。本页涵盖必要的链设置、公共和私有端点选项,以及如何为生产工作负载评估 RPC 提供商。...

RPC 提供商选择Efinity

无限Solana RPC节点:它意味着什么,何时需要?

无限Solana RPC节点移除了按请求的速率限制,让您的应用可以扩展而不会遇到请求上限。本文解释了无限访问的实际含义、如何评估提供商,以及何时专用节点是生产工作负载的正确选择。...

网络 RPCPolkadot

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

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

网络 RPCCelo

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

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

永远不用担心基础设施

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

开始