Solana Geyser gRPC - 快速入門

安裝 SLV

bash
curl -fsSL https://storage.slv.dev/slv/install | sh

$ slv b init

slv b init
只需一條命令 slv b init,即可立即搭建基於高效能流資料的 Solana 機器人開發環境。
bash
slv b init
  • 如果您偏好 TypeScript Geyser 機器人,請選擇 geyser-ts
  • 如果您偏好 Rust Geyser 機器人,請選擇 geyser-rust

允許 ICMP 延遲探測來源

選擇 gRPC 區域時,ERPC 會從下列代理主機向您已註冊的 IP 傳送 ICMP 延遲探測。請允許來自所有列出來源 IP 的傳入 ICMP Echo Request。如果防火牆(ufw、雲端防火牆、安全性群組等)阻擋這些要求,測量結果可能變為 9999ms,並可能選到非最佳區域。同一區域中的多個 IP 分別屬於不同的探測主機,必須全部允許。
探測區域ICMP 來源 IP
🇳🇱 Amsterdam84.32.103.245, 84.32.64.77
🇺🇸 New York64.130.37.222
🇩🇪 Frankfurt185.191.118.149, 185.191.118.177, 185.191.118.206
🇬🇧 London67.209.52.250
🇯🇵 Tokyo198.13.133.88
🇸🇬 Singapore202.8.11.52
🇦🇺 Sydney82.26.116.36
🛰️ Far Point63.254.162.14

Burst gRPC 端點

Geyser gRPC Burst 是 ERPC 為延遲敏感型 Solana 串流工作負載提供的低延遲共享 gRPC 層級。Burst 使用與常規 gRPC 服務相同的 Yellowstone/Geyser gRPC 介面,因此現有 gRPC 用戶端可以繼續使用標準的 account、transaction、slot 和 block 訂閱。
Burst 使用上方列出的相同區域 ICMP 探測來源,依延遲選擇區域。以下位址是 Burst 用戶端端點 IP,而非 ICMP 探測來源;只有在對外連線防火牆限制連線至所選端點時,才需要允許這些位址。
RegionBurst DomainIP Address
🇩🇪 Frankfurtgrpc-fra1-burst.erpc.global64.130.41.234
🇳🇱 Amsterdamgrpc-ams1-burst.erpc.global64.130.55.180
🇺🇸 New Yorkgrpc-ny6-burst.erpc.global64.130.59.217
🇯🇵 Tokyogrpc-tokyo-burst.erpc.global208.91.107.247
🇸🇬 Singaporegrpc-singapore-burst.erpc.global67.209.55.15
註冊 IP 後,請使用 ERPC Web Dashboard 中顯示的端點。Burst 仍是完整的 Geyser gRPC stream;Direct Shreds/ShredStream 是用於原始 shred 資料的獨立 UDP 產品。

Geyser 客戶端示例 - TypeScript

  1. .env.sample 重新命名為 .env
  2. 使用您的實際值編輯 .env
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
請注意:
此端點為示例,不能直接使用。請獲取並配置適合您環境的端點。
  1. 安裝依賴並啟動開發伺服器:
bash
pnpm i
pnpm dev
Geyser TypeScript VSCode

Geyser 客戶端示例 - Rust

  1. .env.sample 重新命名為 .env
  2. 使用您的實際值編輯 .env
ini
GEYSER_ENDPOINT=http://grpc-ams1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
請注意:
此端點為示例,不能直接使用。請獲取並配置適合您環境的端點。
  1. 構建並執行客戶端:
bash
RUST_LOG=info cargo run
Geyser Rust VSCode

✅ 提供 1 天免費試用

Geyser 和 Shreds 機器人均可透過 ERPC Web 儀表盤 官方伺服器免費試用 1 天。

Solana Stream SDK

Solana Stream SDK
透過 slv b init 命令下載的啟動程式碼中使用的 Geyser 介面卡 由開源專案 Solana Stream SDK 提供。
它同時支援 Rust 和 TypeScript,能夠高效實現 Solana 流通訊, 包括 Geyser 訂閱、交易處理和實時賬戶更新監控。
您獲得的啟動程式碼是該 SDK 實際應用的直接示例, 便於您擴充套件用於自己的機器人開發或自定義邏輯。
更多詳情請訪問 GitHub 倉庫: https://github.com/ValidatorsDAO/solana-stream