Validators DAO 发布 Solana Stream SDK TypeScript Yellowstone Geyser napi-rs

Validators DAO 发布 Solana Stream SDK TypeScript Yellowstone Geyser napi-rs

2026.01.08
ELSOUL LABO B.V.(总部:荷兰阿姆斯特丹,CEO:Fumitake Kawasaki)和 Validators DAO 宣布对开源 Solana 流式传输框架"Solana Stream SDK"的 TypeScript 客户端进行重大版本更新,使 TypeScript Yellowstone Geyser gRPC 客户端能够利用 NAPI-RS(Rust 原生实现)。
通过此次更新,Solana Stream SDK 在保持 TypeScript 开发体验的同时,提升了高频流式工作负载的处理余量和稳定性。即使在流量高峰和持续事件爆发期间,系统也能保持稳定运行,不易崩溃。此外,启动代码已从简单的连接示例重构为面向生产的(Production-Ready)基础架构,专为实际运营和可扩展性而设计。

在 TypeScript 中处理实时流的实际条件

Solana 流式传输应用于实时响应直接转化为价值的领域,如交易、监控、分析和运维决策。同时,许多实际开发环境从根本上是基于 Web 的,TypeScript 因其开发速度、可维护性、团队灵活性和交接便利性而成为理想选择。
因此,重要的不仅是流可以在 TypeScript 中处理,而是高频流可以在 TypeScript 中以现实和可持续的方式进行处理,在长期运行条件下不会崩溃。

为什么 Node.js 单线程执行在峰值负载下成为瓶颈

高频流式传输涉及连续的接收、处理、过滤、解码和下游逻辑执行,所有操作同时运行。在这些条件下,单线程 Node.js 执行路径在突发或短期负载峰值期间容易产生背压。
在实际中,这通常表现为延迟增加、处理积压、事件丢失和频繁重连。虽然 TypeScript 在开发速度和可维护性方面表现出色,但关键的运维挑战在于是否能在流式传输峰值条件下保持足够的处理余量。此次更新直接应对了这一挑战。

NAPI-RS 集成的先前范围与扩展

此前,在 Solana Stream SDK 中,NAPI-RS 主要用于 Shreds gRPC TypeScript 客户端。通过此次更新,NAPI-RS(Rust 原生)支持已扩展到广泛使用的 Yellowstone Geyser gRPC TypeScript 客户端。
这一扩展显著增加了流式传输管道中能够受益于低开销原生执行的部分,同时保留了基于 TypeScript 的接口。内部基准测试显示,峰值负载下的背压容忍度有了实质性改善,处理余量提高了约四倍。关键成果不在于数字倍数本身,而在于行为模式的转变——在峰值条件下避免崩溃,可以作为可靠的运维基线。
与 WebAssembly(WASM)等替代方案相比,NAPI 直接执行原生代码,实现更低的延迟和更高的吞吐量。在 Solana Stream SDK 中,NAPI-RS 在不牺牲 TypeScript 开发体验的情况下,发挥着提升实时流性能的核心作用。

在 TypeScript 中使用 Yellowstone Geyser gRPC 的意义

Geyser gRPC 是接收交易、账户更新和 slot 事件低延迟流的核心接口。延迟或数据丢失直接转化为错过的交易机会、延迟的监控和运维决策,以及增加的开发和运维成本。
在 TypeScript 中实现这一核心接口的现实、抗峰值运行,不仅仅是速度问题。它减少了开发和运维中的摩擦,使团队能够持续改进系统,无需切换技术栈或重写核心逻辑。

将启动代码重新定义为面向生产

此前,启动代码主要作为快速连接测试的入口。然而在实际运营中,断连、重连、流连续性、重复或丢失、订阅过滤和峰值负载控制等问题是不可避免的。
如果初始结构过于轻量,这些实际需求往往在后期以临时方式添加,引入结构性变形并增加长期维护成本。此次更新将启动代码重组为能够从一开始就承受实际运维需求的基础架构。

通过结构性重构明确扩展点

在 TypeScript 侧,职责被清晰分离,使扩展点变得明确。入口点保持最小化,专注于组装和启动,而处理逻辑被隔离到处理器中。onTransaction 和 onAccount 等钩子定义了清晰的自定义逻辑插入点。
这种结构允许交易逻辑、检测逻辑、过滤策略和输出目标的修改局部化且可预测。订阅定义也统一到 TypeScript 代码中,而非基于 JSON 的配置,提高了可读性和类型安全性。CommitmentLevel.PROCESSED 等可读构造减少了代码和运行时行为之间的配置偏差。

将运维稳定性作为首要假设

在高频流式传输中,仅有速度是不够的;弹性同样关键。此次更新继续提供内置机制,如背压控制(有界队列、丢弃日志)、已接收/已处理/已丢弃事件的指标、连接保活(ping/pong)、指数退避和基于 from_slot 的间隙恢复。
这些不是可选的增强功能,而是生产流式系统的基线要求。将启动代码视为面向生产意味着从一开始就嵌入这些假设,而非事后叠加。

目标用户和使用场景

此次更新面向希望在生产环境中使用 TypeScript 运行实时 Solana 流的开发者、使用 Yellowstone Geyser gRPC 构建低延迟检测/交易/监控系统的团队,以及在峰值负载处理和重连行为方面面临挑战的开发者。目标是提升基于 TypeScript 的流式传输的运维可行性,同时不牺牲其固有优势。

参考资料

Solana Stream SDK 的更新可在 GitHub 上获取。欢迎通过 GitHub 或 Validators DAO 官方 Discord 提供反馈。
ERPC 在多个地区提供 Solana 流式传输基础设施。使用 Solana Stream SDK 启动代码,开发者可以直接在真实的 Geyser gRPC 环境中验证行为。通过 ERPC 的免费试用,还可以在接近实际生产的条件下同时评估 SDK 和流式传输基础设施。更多详情请访问 ERPC 官方网站。
Validators DAO 官方 Discord: https://discord.gg/C7ZQSrCkYR Solana Stream SDK(GitHub): https://github.com/ValidatorsDAO/solana-stream ERPC 官方网站: https://erpc.global/