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

ロードバランサーのIPを許可してください

登録されたIPに対し、各リージョンのgRPCロードバランサーからリアルタイムでpingを送り、最も近いノードを自動選択しています。Firewall(ufw、セキュリティグループ等)でICMPがブロックされていると 9999ms となり、近いリージョンにリソースがあっても Far Point が選ばれます。下記のIPをホワイトリストに追加し、最寄りリージョンが選択されるようにしてください。
RegionDomainIP Address
🇳🇱 Amsterdamgrpc-ams6-1.erpc.global64.130.52.145
🇩🇪 Frankfurtgrpc-fra6-1.erpc.global64.130.50.30
🇺🇸 New Yorkgrpc-ny6-1.erpc.global64.130.59.62
🇺🇸 Chicagogrpc-chi-1.erpc.global84.32.32.147
🇯🇵 Tokyogrpc-tokyo-6.erpc.global143.20.238.2
🇸🇬 Singaporegrpc-sgp6-1.erpc.global202.8.11.52
🛰️ Far Pointgrpc-far-point.erpc.global84.32.70.28

Geyser クライアント例 – TypeScript

  1. .env.sample のファイル名を .env に変更します
  2. .env ファイルの値を実際のものに変更してください:
env
X_TOKEN=YOUR_X_TOKEN_OR_API_KEY GEYSER_ENDPOINT=https://grpc-ams.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 ファイルの値を実際のものに変更してください:
env
X_TOKEN=YOUR_X_TOKEN_OR_API_KEY GEYSER_ENDPOINT=https://grpc-ams.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-Day の無料トライアルを提供中

Geyser エンドポイントは、Validators DAO公式Discordにて無料でお試しいただけます。
参加はこちらから: https://discord.gg/C7ZQSrCkYR

Solana Stream SDK

Solana Stream SDK
slv b init コマンドでダウンロードされるスターターコードで使用されている Geyser アダプターは、オープンソースの Solana Stream SDK によって提供されています。
Rust と TypeScript の両方に対応しており、Geyser の購読やトランザクション処理、アカウント更新イベントのリアルタイム監視など、Solana ストリーム通信を効率的に実装できます。
スターターとして入手できるコードは、そのままこの SDK の実例となっており、自身のボット開発や独自ロジックの拡張にも活用できます。
詳細はこちらの GitHub リポジトリをご覧ください:
https://github.com/ValidatorsDAO/solana-stream