Validators DAO 釋出 Solana Stream SDK v1.1.1 UDP Shreds Rust 客戶端
Validators DAO 釋出 Solana Stream SDK v1.1.1 UDP Shreds Rust 客戶端

由 ELSOUL LABO B.V.(總部:荷蘭阿姆斯特丹,CEO:Fumitake Kawasaki)與 Validators DAO 開發和運營的開源 Solana 流客戶端 Solana Stream SDK 釋出了最新版本 v1.1.1。伴隨此次釋出,一個直接處理 UDP Shreds——Solana 網路中最快層——的 Rust 入門客戶端已全新開源。
本次釋出提供了一個具體的實現示例,直接透過 UDP 接收驗證者之間交換的 Shreds,無需經過 RPC、WebSocket 或 gRPC 等更高階別的 API 層,並透過最短可能的路徑進行重建和檢測處理。對於延遲直接轉化為價值的用例,這提供了在實際環境中操作最快層的實用起點。
前提:檢測時序的差異
在 Solana 上,即使對於相同的鏈上事件,其可檢測的時序也因觀察位置的不同而顯著不同——無論是從 Shreds、Geyser gRPC 還是 RPC / WebSocket 觀察。從檢測時序的角度來看,Shreds 最先被觀察到,其次是 Geyser gRPC,然後是 RPC / WebSocket。
Shreds 代表組成區塊的片段在驗證者之間直接交換階段的資料。Geyser gRPC 在 Shreds 被節點內部接收和整理後,交付區塊、日誌和賬戶更新等事件。RPC / WebSocket 處於最高層,透過查詢和訂閱提供對已儲存和整理資料的訪問。
為什麼 UDP Shreds 構成最快層
Shreds 透過 UDP 傳遞。UDP 不涉及連線建立、重傳控制或排序保證,將協議開銷保持在最低限度。因此,在相同條件下,資料到達速度比基於 TCP 的 gRPC 或 WebSocket 更快。
當目標是在 Solana 上實現儘可能快的檢測時,UDP Shreds 因這些通訊特性和網路設計而必然成為首選。
為什麼以 pump.fun 作為示例
Validators DAO 收到了大量關於使用 UDP Shreds 實現最快檢測的諮詢。其中,最常見的需求是儘快檢測 pump.fun 上的代幣鑄造和早期交易。
對於代幣鑄造和初始交易,數十毫秒的差異可能實質性地影響結果。因此,pump.fun 是最快層的特性和價值最清楚體現、需求最集中的具體示例。在此次釋出中,入門程式碼包含基於 pump.fun 的檢測邏輯作為預設配置,反映了這一實際需求。這並不將用途限制在 pump.fun,而是作為真實重現最快層檢測的實用示例。
對有意義的事件做出反應,而非一切
處理 UDP Shreds 時,系統中會流過極大量的交易,其中許多對策略或使用者體驗決策來說太小而無關緊要。
入門程式碼採用了允許設定價值閾值的設計,僅對超過該閾值的交易進行檢測。此過濾不是透過事後 RPC 檢查實施的,而是直接在 Shreds 重建後的評估階段應用的。閾值是可選的:將其設為 0 可以檢測所有交易。使用者可以根據特定用例定義要響應多少資料。

上述示例顯示了僅檢測 pump.fun 相關的代幣鑄造和金額達到 1 SOL 或以上的交易的日誌,展示了在最快層上以高密度僅捕獲相關資訊的狀態。
速度的代價:未確認資訊
UDP Shreds 包含區塊完全確認之前的資訊。因此,可能出現失敗的交易,資料可能缺失或亂序到達。這不是缺陷,而是最快層本身的固有屬性。
透過在不等待確認或規範化的情況下處理流動的資料,可以比任何其他層更早地檢測到變化。此入門程式碼明確承認這一前提,並展示了一種僅使用 Shreds 而不依賴 RPC 實現檢測的實現方式。
為清晰而設計的結構
內部處理組織為清晰的序列:接收 → 緩衝 → 重建 → 評估 → 輸出。UDP 接收、FEC 緩衝、反碎片化、監控邏輯和輸出等職責被分離並作為獨立元素處理。這種設計允許使用者最初按原樣執行程式碼,然後逐步修改其用例所需的部分。
資源
GitHub (Solana Stream SDK): https://github.com/ValidatorsDAO/solana-stream
Rust Crate: https://crates.io/crates/solana-stream-sdk
ERPC Website: https://erpc.global/
Validators DAO 官方 Discord: https://discord.gg/C7ZQSrCkYR
關於 Solana Stream SDK v1.1.1 和 UDP Shreds 客戶端的問題和回饋歡迎在 Validators DAO 官方 Discord 上交流。


