不漏掉任何一步:LaserStream的历史重播确保您可以从断开连接中恢复,并补充过去24小时的区块链活动中遗漏的数据。
什么是历史重播?
Historical Replay 是 LaserStream 的一个功能,它允许您通过设置fromSlot 起始点来重播最近的区块链数据。这对于处理断开连接和确保实时应用的数据连续性非常有用。
您可以回放的历史长度
无论您订阅哪个承诺级别,您都可以回放长达约 24 小时(约 216,000 个槽)的历史数据。在该时间窗口内传递一个fromSlot,LaserStream 将从那里流式传输到当前时间。
较早的重播返回已完成的数据。 LaserStream 在内存中保留最后约 20 分钟的槽;更早的数据则从仅持有已完成区块的历史存储中提供。因此,当您回放一个超过约 20 分钟的 fromSlot 时,数据反映的是已完成的链——即使在 processed 或 confirmed 订阅中,您也不会看到分叉或丢弃的槽或槽内账户更新。最近 20 分钟内的槽具有真正的承诺语义,包括分叉和槽内账户更新。
处理断开连接
恢复在短暂断开连接期间(最多 24 小时)丢失的数据
引导程序应用
使用最近 24 小时的上下文启动应用程序
分析最近事件
审查最近的交易和账户变更
使用最近数据进行测试
使用真实的最近数据进行测试和开发
工作原理
1
指定起始点
使用
fromSlot 参数设置您的重播起始点(必须在最近约 216,000 个槽内)2
流式传输历史数据
LaserStream 从您指定的槽开始传送所有事件
3
赶上实时数据
历史数据流式传输直到您到达当前槽
4
继续实时流式传输
无缝过渡到实时数据流
自动重新连接: LaserStream SDK自动处理重新连接和重放。无需额外代码!
快速入门
- gRPC
配置选项
number
必填
从这个槽号开始重放,作为一个
u64。必须在重放窗口内(最后约216,000个槽 / 当前槽的约24小时内),任何承诺级别均可。示例: currentSlot - 1000重要: 如果您传递的槽比窗口更旧,LaserStream会拒绝请求并返回Operation was attempted past the valid range。使用案例
短暂断开后的重新连接
短暂断开后的重新连接
当您的应用程序在短暂断开连接(少于24小时)后重新连接时,可以使用历史重放确保未遗漏数据。
getCurrentSlot调用Helius RPC;lastProcessedSlot保存在内存中——可根据您的应用需求进行持久化(Redis、Postgres、文件等)。使用最近上下文启动
使用最近上下文启动
使用最近几分钟的上下文启动您的应用程序:
使用最近数据进行测试
使用最近数据进行测试
使用最近的历史数据进行测试(限最后24小时):
下一步
LaserStream gRPC
了解有关gRPC流功能和特点的更多信息
开始使用
从您的Helius控制台启用LaserStream并开始流式传输。
SDK文档
查看完整的SDK文档
联系支持
获取实施帮助