Solana Shreds vs Yellowstone gRPC:选择正确的 Solana 数据流

  • Shyft_to
  • 发布于 2025-11-26 14:34
  • 阅读 11

本文对比了 Solana 中两种数据流:Shreds 和 Yellowstone gRPC,Shreds 提供原始、快速的数据,但缺乏完整交易信息和过滤功能,Yellowstone gRPC 提供完整交易信息,但速度较慢。RabbitStream 结合了两者的优点,提供接近 Shreds 的速度,同时具备 Yellowstone gRPC 的过滤和易用性,适合对速度有较高要求的开发者。

Solana Shreds vs Yellowstone gRPC: 选择正确的 Solana 数据流

理解 RabbitStream、Solana Shreds 以及与 Yellowstone gRPC 的区别

Rabbitstream 封面

在 Solana 上,速度 不仅仅是重要的,而是 一切。 如果你正在构建高风险应用程序,例如 交易机器人代币狙击器,那么比竞争对手提前几毫秒检测到交易就是你获胜的方式。 为了了解根据速度和上下文使用哪种工具进行流式传输,我们必须首先了解来自 Solana 验证器的两个数据流源之间的差异:ShredsYellowstone gRPC

如果你错过了,这里有一篇 Rabbitstream 简介

Yellowstone gRPC: 具有完整交易上下文的来源

Yellowstone gRPC 插件,或称为 Geyser 插件,是 Solana 的官方接口,用于从验证器中流式传输结构化数据。 数据在交易完成完整的验证器管道(RPC 中的 Gossip、分片和执行)后提取,然后使用 Yellowstone 插件进行流式传输。

这是此接口最广泛采用且经过实战考验的实现:Yellowstone gRPC Geyser

  • 提取点: 数据在 RPC 执行后进行流式传输。(执行后)
  • 主要特点: 提供完整的交易,包括 meta 字段、日志和余额。
  • 权衡: 比 Shreds 慢,因为它必须等待执行过程完成。

Solana Shreds: 超低延迟来源

Shreds 是 Solana 验证器使用 Turbine 协议立即发送到网络的 原始小数据包。 数据在 Gossip 和分片步骤之后立即提取,在 RPC 执行交易之前,因此 速度更快。 但是,由于它不是由 RPC 执行的,因此不会生成执行后数据,即 metainnerInstructionslogsbalances

这在 狙击机器人 中特别有用,因为不需要完整的交易,只需要必要的上下文。

  • 提取点: 数据在 RPC 执行之前提取。
  • 主要特点: 比 Yellowstone gRPC 流式传输速度更快。
  • 权衡: 缺少所有执行上下文(交易元数据、日志、费用、最终状态)。

1.3. 核心区别

区别很明显:Shreds 提供原始、即时的信号(最快的检测),而 Yellowstone gRPC 提供可靠、完整的报告(最多的上下文)。

Solana Yellowstone vs Rabbitstream

Yellowstone 和 Rabbitstream 之间的区别

Shreds 的问题:为什么未经过滤的数据会让大多数构建者失败

虽然原始 shreds 提供了无与伦比的速度,但使用它们会对开发人员带来一些技术和财务挑战:

  • 没有可用的过滤器,数据过载: Shreds 是完全未经过滤的。 这意味着你将收到 Solana 上的每一笔交易,包括所有内部投票交易和失败的交易,从而产生大量、难以管理的数据负载。 原始流没有可用的过滤形式。
  • 困难的解码要求: 原始 shreds 的数据结构复杂且采用二进制编码,使其与标准 Solana 解析库不兼容。 这需要为每个应用程序定制、耗时的解码逻辑。
  • 缺少交易上下文: 由于 shreds 未经确认,因此缺少完整的交易元数据(meta),包括程序日志、内部指令以及预/后代币余额等关键数据。 这从根本上限制了它们主要用于简单的狙击策略。
  • 高昂的费用: 很少有提供商提供原始或解码的 shred 流,而且这些服务的价格通常超出了独立开发人员和小型团队的承受范围。

RabbitStream:未经过滤的速度,为你过滤

RabbitStream 提供直接从 shreds 提取的 实时交易,这些 shreds 直接来自 leaders,并通过 gRPC 接口进行流式传输。 它 结合shreds 的传输速度,以及 Yellowstone 的可用性和过滤能力

了解更多关于 Rabbitstream 的信息 — 来自 Shyft 的全新流媒体解决方案 ](https://docs.shyft.to/rabbitstream/rabbitstream-overview),它比原始 shreds 提供了一些优势。

  • Yellowstone gRPC 风格的过滤—— 使用与 Yellowstone gRPC 完全相同的 SubscribeRequest 格式。 按 accountIncludeaccountRequired 等进行过滤——你的终端不需要复杂的解码。
  • 兼容的交易结构—— 交易以 类似于 Yellowstone gRPC 的结构 进行流式传输(减去完整的元数据),使其与现有的 gRPC 客户端和处理逻辑 立即可用
  • 超低延迟—— 感受 Solana 正在发生的脉搏。 RabbitStream 提供运行你自己的验证器集群之外 可能的最低交易检测延迟

为什么 Rabbitstream 比 Yellowstone RPC 快

Rabbitstream 和 Yellowstone gRPC 的数据流

选择你的流:RabbitStream vs. Geyser gRPC

想知道如何使用 Rabbitstream 连接和流式传输数据吗? 在 这里 查找更多信息。 ](https://miro.medium.com/v2/resize:fit:700/1*g8zNshH8ssD7R6ihlInbKA.png)

响应中的差异:meta 字段

你可以在 Shyft 文档 上找到更多关于 Rabbitstream 响应 及其差异的信息。 ](https://github.com/Shyft-to/yellowstone-grpc-vs-rabbitstream) 检测器。 我们的初步测试显示,始终如一的 速度优势 从 ~ 15 毫秒到 100 毫秒不等

我们相信 RabbitStream 代表了对专注于速度关键型应用程序的开发人员的重要解锁。

如果你喜欢这篇文章,请随时查看我们关于 Rabbitstream 简介使用 Yellowstone gRPC 重放插槽 的其他文章。 非常感谢你的阅读时间。

构建快乐!

  • 原文链接: blogs.shyft.to/shreds-vs...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Shyft_to
Shyft_to
在 Solana上更快更智能地构建,使用Shyft的SuperIndexer、gRPC、RPC、API和SDK