![]() |
|
Sub-15ms Solana Streams via Geyser gRPC - Printable Version +- Hack Forums (https://hackforums.net) +-- Forum: Money (https://hackforums.net/forumdisplay.php?fid=241) +--- Forum: Crypto Currency (https://hackforums.net/forumdisplay.php?fid=380) +--- Thread: Sub-15ms Solana Streams via Geyser gRPC (/showthread.php?tid=6331858) |
Sub-15ms Solana Streams via Geyser gRPC - leste0 - Sep 14, 2026 Hey everyone, If you are running on-chain indexers, snipers, or event listeners on Solana and still relying on standard JSON-RPC HTTP POST or default WebSocket subscriptions, you are taking an automatic 200ms+ penalty on every state update. During high-volatility slots, public RPCs bottleneck hard on TCP connection churn, rate limits, and JSON string serialization overhead. Here is a lean implementation using Yellowstone Geyser and Go to stream raw transaction and account updates over gRPC with sub-15ms latency. The Core Problem
Minimal Zero-Allocation Consumer (Go) This pipeline connects to a Yellowstone gRPC instance, applies server-side account filters, and streams updates directly without reflection overhead: Code package mainBenchmark Takeaways
If you are competing on execution speed on Solana, standard RPCs are dead weight. Anyone else running direct validator feeds here, or are you primarily routing bundles via Jito? RE: Sub-15ms Solana Streams via Geyser gRPC - SUI-3183372 - Sep 14, 2026 (Sep 14, 2026 12:30 PM)leste0 Wrote: Yellowstone C++ PluginWat? (Sep 14, 2026 12:30 PM)leste0 Wrote: zero-copy binary deserialization, zero disk waitWat? What happens when a slot you already acted on comes back as `Dead`? Are you buffering to confirmed or just eating the bad fills? RE: Sub-15ms Solana Streams via Geyser gRPC - leste0 - Sep 14, 2026 (Sep 14, 2026 12:52 PM)SUI-3183372 Wrote: Wat? If you wait for `confirmed`, you're adding 400-800ms of lag and losing the block race every time. We execute on `processed`. If you're routing via Jito bundles, dead slots resolve cleanly since non-canonical slots don't commit. For raw transactions, you just absorb the rare bad fill—it’s factored into the risk budget. Sacrificing latency to avoid a 1% edge-case reorg makes zero sense in this game. And the C++ part: just talking about consuming the Yellowstone protobuf stream with zero-copy arena allocation rather than standard heap-allocating parsers. Cuts down GC/allocator jitter to zero. RE: Sub-15ms Solana Streams via Geyser gRPC - SUI-3183372 - Sep 14, 2026 OP's banned now, but there's a lot in this thread that doesn't make sense (and plenty that does make sense, to their credit). It was like he was grabbing for buzz words but not fitting them together properly. |