getFirstAvailableBlock
RPC 方法返回尚未被查询节点从账本中清除的最低(最旧)确认区块的槽号。这对于了解特定节点当前存储的历史数据范围非常有用。
常见用例
- 历史数据查询: 确定可以开始在特定节点上查询历史区块或交易数据的起点。
- 节点同步检查: 虽然不是直接的同步度量,但可以了解一个节点与其他节点相比保留了多少历史数据。
- 账本分析: 了解给定 RPC 端点上可用的账本深度。
请求参数
此方法不需要任何参数。响应结构
JSON-RPC 响应的result
字段将是一个 u64
(无符号 64 位整数),表示第一个可用区块的槽号。
示例
1. 获取第一个可用区块槽
此示例获取查询节点上可用的最旧区块的槽号。开发者提示
- 节点特定: 不同 RPC 节点之间,第一个可用区块可能会有显著差异。节点可以配置以不同的速率修剪账本数据,因此一个节点可能比另一个节点有更深的历史记录。
- 非固定: 由于旧槽最终会被从账本中清除以节省空间,
getFirstAvailableBlock
返回的值会随着时间的推移而增加。 - 确认区块: 此方法指的是确认区块。已处理但尚未确认或最终确定的区块不在考虑范围内。
getFirstAvailableBlock
RPC 方法来识别 Solana 节点上最早可用的区块槽。