
LaserStream 正式发布:新一代 Solana 数据流服务
目录
LaserStream 可以直接替代在专用节点上运行的 gRPC。凭借 48 小时历史数据重放和自动重连功能,Solana 上的任何团队都能以远低于运行专用基础设施的成本,流式传输交易、插槽、区块和账户变更。
什么是 LaserStream?
LaserStream 是新一代流式传输服务,专为需要可靠、低延迟 Solana 数据的开发者打造。它可以将链上事件(交易、插槽、区块、账户等)直接传输到你的应用,并提供行业领先的可靠性、性能和灵活性。
LaserStream 会连接多个 Solana 节点,聚合这些节点的数据,再将其流式传输到你的前端应用或后端数据库,而不是依赖单个专用节点。
得益于这种简化、冗余且可扩展的配置,你无需管理专用基础设施,可以获得更稳定的延迟,并且不会错过任何更新。
LaserStream 还支持历史数据重放。如果订阅暂停或断开,你可以补齐过去 48 小时的历史数据。
申请 LaserStream 免费试用,亲自体验 Solana 的真正速度。
LaserStream 的工作原理
每台 LaserStream 服务器都会连接多个 Solana 节点,对传入的数据去重,并保留最近插槽的缓冲区,让开发者可以重放历史插槽。
为了确保高可用性、数据正确性和可扩展性,LaserStream 部署在七个区域,每个区域都运行多台服务器以实现冗余。
如果某个区域的一台服务器发生故障,流量会自动重定向到该区域内下一台可用服务器。
因此,即使在服务器维护或意外中断期间,你的应用也能持续连接到高质量的数据流。
LaserStream 功能
LaserStream 可以直接替代专用节点,并为使用 gRPC 的产品提供诸多独特优势。
历史数据重放和自动重连
WebSockets 和 gRPC 的常见问题之一是套接字断开和数据丢失。LaserStream 通过自动重连和历史数据重放解决了这个问题。
使用 LaserStream,你可以重放过去 48 小时内的插槽,确保断开连接时不会丢失任何关键数据。无需再编写自定义代码来管理重连,也无需补齐因意外中断而错过的区块。
高冗余与高可靠性
对于 Solana 数据流服务而言,可靠性和数据正确性不容妥协。LaserStream 使用全球分布式服务器集群,每台服务器均由多个 Solana 节点提供支持,确保你的数据流从不中断,并且始终收到正确的数据。
- 通过全球分布式集群提供内置高可用性
- 集群分布在七个区域:法兰克福、阿姆斯特丹、盐湖城、东京、新加坡、匹兹堡和纽瓦克
- 每个区域都有多台 LaserStream 服务器
- 每台服务器均由多个 Solana 节点提供支持,确保弹性
- 客户端通过我们的负载均衡器自动重定向,实现无缝故障转移
无需手动故障转移,也无需担心数据丢失,只有持续不断的数据流。
接近原生的性能
实时数据流对时效性要求极高,可能直接决定一笔交易能否盈利。
即使在 Solana 最繁忙的 epoch 期间,LaserStream 也能保持快速且稳定。多区域中继网格会持续检查实时延迟,并通过最快路径路由每项订阅,在维持每秒数万条消息吞吐量的同时,将传输抖动控制在毫秒级。
如果上游节点或整个区域短暂中断,连接会在几毫秒内切换到下一个中继,并自动重放错过的插槽(最多可追溯 48 小时),确保你不会错过任何事件。
最终,你将获得无数据缺口的高吞吐量数据流,可以专注于策略,而不必操心服务可用性。
即时设置
过去,交易者和延迟敏感型应用需要使用运行 Geyser 插件的专用节点来流式传输实时更新。遗憾的是,运行专用节点既复杂又耗时,还取决于你首选位置是否有可用资源。
LaserStream 省去了为 gRPC 数据流配置、设置、监控和管理自有节点的麻烦,同时提供更出色的性能和更友好的开发者功能。
LaserStream 使用与 Enhanced WebSockets 和 gRPC 完全兼容的熟悉接口,因此可以无缝直接替代你的当前配置。
无需复杂迁移。无需学习新语法。
只需将现有的 gRPC URL 替换为 LaserStream URL,即可获得极致性能和可靠性。
高级筛选
面对 Solana 的海量数据,团队需要全面而灵活的筛选选项,确保只接收最重要的信息。
LaserStream 让你能够精准控制数据。你可以轻松按特定账户、账户所有者、交易状态、区块元数据、插槽及更多条件进行筛选。
更实惠的价格
专用节点起价为每月 $2,900,对于初创公司和成本敏感型应用来说可能是一笔高昂开支。使用 LaserStream,所有采用 Helius Professional 计划(每月 $999)的团队都可以访问高性能实时数据流。
更多信息请参阅我们的计划与定价页面。
如何开始使用 LaserStream
下面的快速入门指南介绍了如何通过我们的 LaserStream SDK 使用 gRPC 建立连接。
gRPC 快速入门
按照以下步骤开始使用 LaserStream:
LaserStream gRPC 与 Yellowstone gRPC 库完全兼容。你可以使用我们的任意公共端点,并将 API 密钥作为令牌传入。
1. 创建新项目
mkdir laserstream-grpc-demo
cd laserstream-grpc-demo
npm init -y2. 安装依赖项
npm install helius-laserstream
npm install --save-dev typescript ts-node
npx tsc --init3. 获取 API 密钥
生成 API 密钥,然后从控制面板的端点页面选择端点。
4. 创建订阅脚本
在名为 index.ts 的文件中添加以下代码:
import { subscribe, CommitmentLevel, LaserstreamConfig, SubscribeRequest } from 'helius-laserstream'
async function main() {
const subscriptionRequest: SubscribeRequest = {
transactions: {
client: {
accountInclude: [‘pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA’],
accountExclude: [],
accountRequired: [],
vote: false,
failed: false
}
},
commitment: CommitmentLevel.CONFIRMED,
accounts: {},
slots: {},
transactionsStatus: {},
blocks: {},
blocksMeta: {},
entry: {},
accountsDataSlice: [],
// Optionally, you can replay missed data by specifying a fromSlot:
// fromSlot: '224339000'
// Note: Currently, you can only go back 48 hours
};
// Replace these values with your actual Laserstream API key and endpoint
const config: LaserstreamConfig = {
apiKey: 'your-api-key',
endpoint: 'your-endpoint',
}
await subscribe(config, subscriptionRequest, async (data) => {
console.log(data);
}, async (error) => {
console.error(error);
});
}
main().catch(console.error);5. 运行并查看结果
npx ts-node index.ts每当已确认的交易涉及账户 pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA 时,你都会在控制台中看到交易更新。
如果要重放旧数据,请取消注释 fromSlot 参数,并指定要从哪个近期插槽开始。
如需更多指南和示例,请阅读 LaserStream gRPC 文档。
LaserStream 可用范围
所有采用 Developer 计划(每月 $49)及更高级计划的 Helius 客户都可以在 Devnet 上使用 LaserStream。采用 Professional 计划(每月 $999)及更高级计划的客户可以在 Mainnet 上使用 LaserStream。
如果你想在升级或迁移前评估 LaserStream 在 Solana 主网上的表现,可以申请免费试用。
LaserStream 支持
如果你遇到问题、有任何疑问或想提供一般性反馈,请通过 Discord 或 Telegram 联系我们。我们很乐意听取你的意见,并帮助你排查任何问题。
致谢
特别感谢 Kirill Fomichev。LaserStream 是基于他出色的 Richat 项目定制的分支。
相关文章
订阅 Helius
及时了解 Solana 开发的最新动态,并在我们发布新内容时收到更新


