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

将 gRPC 负载均衡器 IP 加入白名单

系统会使用每个区域 gRPC 负载均衡器的实时 ping 检测,选择距离您注册 IP 最近的节点。如果防火墙(ufw、安全组等)阻止了 ICMP,ping 可能显示 9999ms,这可能导致无法选择最佳的就近区域。请将以下 IP 加入白名单,以便自动选择最近的区域。
RegionDomainIP Address
🇳🇱 Amsterdamgrpc-ams1.erpc.global84.32.103.245
🇳🇱 Amsterdamgrpc-ams1.erpc.global84.32.64.77
🇺🇸 New Yorkgrpc-ny6-1.erpc.global64.130.37.222
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.149
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.177
🇩🇪 Frankfurtgrpc-fra1-1.erpc.global185.191.118.206
🇬🇧 Londongrpc-lon6-1.erpc.global67.209.52.250
🇯🇵 Tokyogrpc-tokyo-6.erpc.global198.13.133.88
🇸🇬 Singaporegrpc-sgp6-1.erpc.global202.8.11.52
🇦🇺 Sydneygrpc-syd-1.erpc.global82.26.116.36
🛰️ Far Pointgrpc-far-point.erpc.global63.254.162.14

Burst gRPC 端点

Geyser gRPC Burst 是 ERPC 面向延迟敏感型 Solana 流式工作负载的低延迟共享 gRPC 层级。Burst 使用与常规 gRPC 服务相同的 Yellowstone/Geyser gRPC 接口,因此现有 gRPC 客户端可以继续使用标准的 account、transaction、slot 和 block 订阅。
Burst 目前在 Frankfurt、Amsterdam、New York、Tokyo 和 Singapore 运行。延迟选择仍然使用上方列出的常规 gRPC ping 源 IP;下方的 Burst 负载均衡器 IP 是需要允许客户端连接的公开 Burst 端点。
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