ERPC、Solana Geyser gRPC の安定運用に向けた Best Practices とコード例ドキュメントを公開
ERPC、Solana Geyser gRPC の安定運用に向けた Best Practices とコード例ドキュメントを公開

ELSOUL LABO B.V.(本社:オランダ・アムステルダム、代表取締役 CEO:川崎文武)と Validators DAO が運営する ERPC は、全リージョンで性能向上を継続している Solana Geyser gRPC エンドポイントについて、実運用での安定性と扱いやすさを高めることを目的とした新たなドキュメントを公開しました。
今回公開したのは、Geyser gRPC を本番環境で安定して利用するための Best Practices をまとめたガイドと、実際に動作する Rust コードを中心とした Code Examples の 2 ページです。
Geyser gRPC 普及における実務的な課題
Geyser gRPC は、Solana のトランザクションやアカウント、スロットといったイベントを低遅延で取得できる強力なインターフェースです。一方で、Web 開発領域では長らく WebSocket が主流であったこともあり、双方向 gRPC ストリームを前提とした実装経験が十分に共有されてきたとは言えません。
特に、近年の ERPC における全リージョンでの性能改善により、クライアント側では接続維持のための ping / pong 処理、再接続時の gap recovery、フィルタ設計による負荷制御といった点が、これまで以上に重要になっています。これらが適切に実装されていない場合、30 秒程度での切断や、再接続時のデータ欠損といった問題が発生しやすい状況がありました。
ERPC における対応方針
ERPC では、Geyser gRPC の配信基盤そのものについては、すでに全リージョンで業界最速水準の低遅延と安定性を実現しています。今回の取り組みは、その次の段階として「正しく、安定して使える」状態を開発者の皆様に提供することを目的としたものです。
単なる API 仕様の説明ではなく、実運用で問題になりやすいポイントや、現実的な構成判断を含めた知見を整理し、導入初期から本番運用までを支援することを重視しています。
公開したドキュメントについて
今回公開した Best Practices ドキュメントでは、Geyser gRPC を用いたアプリケーションを安定運用するために必要となる考え方や設計上の要点を整理しています。具体的には、段階的な購読設計、不要なトラフィックを抑えるフィルタリング、再接続時の from_slot の扱い、ping / pong を含む接続管理など、実務上重要となるポイントをまとめています。
また、Code Examples では、これらの考え方を実際の Rust コードとして確認できるよう、シンプルな購読例から、本番環境を想定した耐障害性の高いクライアント構成までを例示しています。コードはそのまま ERPC の Geyser gRPC エンドポイントに接続して利用できる内容となっています。
- Solana Geyser gRPC Best Practices: https://erpc.global/ja/doc/geyser-grpc/best-practices/
- Solana Geyser gRPC Code Examples: https://erpc.global/ja/doc/geyser-grpc/code-examples/
想定する利用者像
これらのドキュメントは、初めて Geyser gRPC を利用する開発者の皆様に加え、WebSocket ベースの構成から移行を検討しているチーム、すでに gRPC を利用しているものの接続の不安定さや再接続時の挙動に課題を感じている開発者の皆様を想定しています。
実装時のつまずきやすいポイントを事前に把握することで、PoC 段階から本番運用までをよりスムーズに進めることが可能になります。
Solana Stream SDK との関係
今回公開した実装パターンは、Validators DAO が提供する Solana Stream SDK によってサポートされています。ERPC の Geyser gRPC 環境を前提としたクライアント実装として、そのまま活用できる構成となっています。
Solana Stream SDK: https://github.com/validatorsdao/solana-stream
マルチリージョン提供と料金プランについて
ERPC は、フランクフルト、アムステルダム、ニューヨーク、シカゴ、東京、シンガポールなど、複数リージョンに Geyser gRPC エンドポイントを配置し、時間帯やネットワーク状況による有利不利を抑えた構成を提供しています。
Geyser gRPC は、単一リージョンで利用できる単体プランに加え、複数リージョンを一括で利用できる gRPC Bundle プランを提供しています。今回公開したドキュメントは、これらすべてのプラン利用者に共通して役立つ内容となっています。


今後について
ERPC では、今後も Geyser gRPC を含むストリーミング基盤の性能改善を継続するとともに、実運用で得られた知見をドキュメントやコード例として還元していきます。
高速であるだけでなく、正しく使いやすいプラットフォームとして、開発者の皆様を支援していく方針です。
ご利用・相談について
最適なリージョン構成やプラン選定、既存構成からの移行については、Validators DAO 公式 Discord にて個別相談を承っております。
- Validators DAO 公式 Discord: https://discord.gg/C7ZQSrCkYR
- ERPC 公式サイト: https://erpc.global/ja

